/* Sabban&Co · Two worlds, one considered experience */
.project-dialog:is([data-current-project=software],[data-current-project=branding]) .project-window { width:min(1440px,calc(100vw - 96px)); height:calc(100dvh - 82px); }
.project-dialog[data-current-project=software] { --project-ink:#e9f0f8; --project-muted:#a5b1c2; --project-line:#ffffff26; }
.project-dialog[data-current-project=software] .project-window,.project-dialog[data-current-project=software] .project-window-foot { background:#080e18; color:#e9f0f8; }
.project-dialog[data-current-project=branding] { --project-ink:#531f2b; --project-muted:#735c61; --project-line:#531f2b26; }
.project-dialog[data-current-project=branding] .project-window,.project-dialog[data-current-project=branding] .project-window-foot { background:#f2ede4; color:#531f2b; }
.project-card-art .project-brand-icon { width:52px; height:52px; object-fit:contain; }
:is(html,[data-theme=dark]) .showcase-content.studio-world { padding:0; font-family:inherit; font-weight:300; line-height:1.6; text-align:left; text-align-last:auto; overflow:hidden; isolation:isolate; }
:is(html,[data-theme=dark]) .showcase-content.software-world { --sw-ink:#e9f0f8; --sw-muted:#a5b1c2; --sw-accent:#b7dafa; --sw-line:#ffffff26; color:var(--sw-ink); background:#080e18; }
:is(html,[data-theme=dark]) .showcase-content.branding-world { --sw-ink:#531f2b; --sw-muted:#796369; --sw-accent:#531f2b; --sw-line:#531f2b2b; color:var(--sw-ink); background:#f2ede4; }
.studio-world :is(h1,h2,h3,h4,p,figure) { margin:0; color:inherit; }
.studio-world :is(h1,h2,h3,h4) { font-weight:300; }
.studio-world h3 { font-size:clamp(44px,6.4vw,86px); letter-spacing:-.055em; line-height:1.05; }
.studio-world em { font-family:Georgia,'Times New Roman',serif; font-style:italic; font-weight:400; letter-spacing:-.05em; color:var(--sw-accent); }
.studio-world p { font-size:16px; line-height:1.75; }
.studio-world img { display:block; height:auto; max-width:100%; }
.studio-world a { color:inherit; }
.studio-world button { font:inherit; }
.studio-world .sw-kicker { font-size:11px; line-height:1.5; text-transform:uppercase; letter-spacing:.14em; margin-bottom:32px; }
.sw-topline { display:flex; align-items:center; justify-content:space-between; gap:24px; position:relative; z-index:4; }
.sw-topline .sw-kicker { margin:0; }
.studio-world .motion-toggle { border:1px solid var(--sw-line); background:transparent; color:inherit; margin:0; padding:8px 12px; border-radius:2px; font-size:11px; white-space:nowrap; }
.studio-world .sw-text-link { display:inline-flex; align-items:center; gap:30px; margin-top:34px; font-size:13px; text-decoration:none; border-bottom:1px solid var(--sw-line); padding:12px 0; }
.sw-text-link span { font-size:21px; }
.sw-bottomline { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--sw-line); padding-top:20px; font-size:11px; line-height:1.6; }
.sw-section { position:relative; padding:clamp(55px,7vw,100px) clamp(26px,6.8vw,98px); }
.sw-section-head { max-width:860px; }
.sw-section-head > p:not(.sw-kicker) { max-width:550px; color:var(--sw-muted); margin-top:30px; }
.sw-depth-stage { perspective:1200px; position:relative; }
.sw-depth-object { position:relative; width:100%; height:100%; transform-style:preserve-3d; transform:rotateX(var(--sw-rx,0deg)) rotateY(var(--sw-ry,0deg)); transition:transform .7s cubic-bezier(.2,.65,.25,1); }
.sw-hero { padding:30px clamp(26px,5vw,76px) 25px; background:radial-gradient(ellipse at 85% 44%,#21384e 0,transparent 57%),#080e18; }
.sw-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:75px 0 100px; }
.sw-hero-copy { position:relative; z-index:3; }
.studio-world .sw-hero-copy :is(h1,h2) { font-size:clamp(50px,6.3vw,88px); line-height:1.05; letter-spacing:-.065em; margin-bottom:32px; }
.sw-hero-copy > p { max-width:395px; color:#b9c8d8; }
.sw-studio-stage { min-height:480px; margin:0 25px 0 0; }
.sw-studio-stage .sw-depth-object { height:480px; }
.sw-hero-print { position:absolute; width:90%; top:8%; left:5%; transform:rotate(-6deg) translateZ(12px); background:#fff; color:#253e4c; box-shadow:0 35px 85px #0006; }
.sw-hero-print img { width:100%; }
.studio-world .sw-hero-print figcaption { display:flex; justify-content:space-between; gap:10px; padding:0 20px 17px; color:#56616a; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.sw-floating-note { position:absolute; z-index:2; background:#152739ed; border:1px solid #b7dafa4d; padding:18px 22px; box-shadow:0 20px 45px #0004; backdrop-filter:blur(14px); }
.sw-floating-note small { display:block; font-size:10px; color:#b4c7d9; margin-bottom:8px; }
.sw-floating-note > span { font-size:16px; line-height:1.3; display:block; }
.sw-note-input { top:-3%; right:-7%; transform:translateZ(70px) rotate(4deg); animation:sw-float 8s ease-in-out infinite; }
.sw-note-input > span { font-size:12px; letter-spacing:.1em; }
.sw-note-input i { display:block; height:2px; margin-top:18px; background:linear-gradient(90deg,#b7dafa,#b7dafa20); }
.sw-floating-detail { position:absolute; width:42%; right:-10%; bottom:-7%; transform:translateZ(100px) rotate(7deg); background:#fff; box-shadow:0 25px 60px #0005; animation:sw-float 9s ease-in-out infinite reverse; }
.sw-floating-detail img { width:100%; }
.studio-world .sw-floating-detail figcaption { font-size:9px; color:#53616e; padding:0 10px 12px; text-align:center; }
.sw-note-review { bottom:4%; left:-5%; transform:translateZ(55px) rotate(-3deg); }
.sw-introduction { background:#101c2a; }
.sw-intro-copy { display:grid; grid-template-columns:1fr 1fr; gap:50px; max-width:930px; margin:38px 0 62px auto; color:#b6c2cf; }
.sw-build-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; padding:0; margin:0; list-style:none; }
.sw-build-steps li { border-top:1px solid var(--sw-line); padding-top:25px; }
.sw-build-steps li > span { font-size:11px; color:#8facc7; }
.sw-build-steps h4 { font-size:28px; letter-spacing:-.03em; margin:25px 0 14px; }
.sw-build-steps p { font-size:14px; color:#b0becb; }
.sw-source-list { margin-top:60px; }
.sw-source-list > div { display:grid; grid-template-columns:1fr 1.7fr 28px; gap:38px; align-items:start; padding:34px 0; border-top:1px solid var(--sw-line); }
.sw-source-type { font-size:clamp(30px,4vw,55px); line-height:1.2; font-weight:200; letter-spacing:-.05em; }
.sw-source-list h4 { font-size:24px; letter-spacing:-.02em; margin-bottom:12px; }
.sw-source-list p { color:var(--sw-muted); font-size:15px; }
.sw-source-number { font-size:11px; padding-top:7px; text-align:right; color:var(--sw-muted); }
.studio-world .sw-footnote { font-size:12px; color:var(--sw-muted); margin-top:20px; max-width:680px; }
.sw-angle-section { background:#b8cfe0; color:#142b3e; --sw-accent:#315b79; --sw-muted:#3b586e; padding-bottom:90px; }
.sw-angle-section .sw-section-head { max-width:900px; }
.sw-angle-stage { max-width:850px; margin:70px auto 10px; padding:0 70px; }
.sw-angle-print { background:#fff; transform:rotate(-4deg) translateZ(20px); box-shadow:0 35px 65px #18344829; }
.sw-angle-print img { width:100%; }
.studio-world .sw-angle-print figcaption { text-align:center; padding:0 20px 25px; font-size:11px; color:#576d7b; }
.sw-angle-label { position:absolute; top:12%; left:-15%; width:155px; padding:24px; color:#d6e9fa; background:#173247; transform:translateZ(90px) rotate(-7deg); box-shadow:0 20px 45px #29455b25; animation:sw-float 9s ease-in-out infinite; }
.sw-angle-label > span { display:block; font-size:78px; font-weight:200; line-height:1; letter-spacing:-.07em; }
.sw-angle-label p { font-size:13px; margin-top:18px; line-height:1.4; }
.sw-angle-tab { position:absolute; right:-10%; bottom:14%; padding:19px 27px; color:#193f5c; background:#edf6fe; font-size:12px; transform:translateZ(65px) rotate(5deg); box-shadow:0 18px 35px #29455b25; }
.sw-material-section { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:65px; }
.sw-material-art { margin-left:-25px; }
.sw-material-art figure { background:#fff; transform:rotate(-5deg) translateZ(25px); box-shadow:0 25px 70px #0005; }
.sw-material-art img { width:100%; }
.studio-world .sw-material-art figcaption { padding:0 25px 24px; font-size:12px; color:#556572; }
.sw-material-copy h3 { font-size:clamp(40px,4.7vw,66px); margin-bottom:30px; }
.sw-material-copy > p:not(.sw-kicker) { color:var(--sw-muted); margin-top:20px; font-size:15px; }
.sw-material-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:30px; }
.sw-material-tags span { font-size:11px; border:1px solid var(--sw-line); padding:7px 12px; border-radius:30px; }
.sw-review-section { background:#eff3f5; color:#192e40; --sw-accent:#466a85; --sw-muted:#526572; }
.sw-comparison { background:white; margin-top:42px!important; }
.sw-comparison img { width:min(100%,760px); margin:auto; }
.studio-world .sw-comparison figcaption { padding:0 22px 25px; text-align:center; color:#596a78; font-size:12px; }
.sw-review-line { display:flex; justify-content:space-between; gap:22px; border-top:1px solid #152d452d; margin-top:30px; padding-top:25px; font-size:12px; }
.sw-business-section { background:#101c2a; }
.sw-benefits { display:grid; grid-template-columns:1fr 1fr; gap:45px 75px; margin-top:60px; }
.sw-benefits > div { border-top:1px solid var(--sw-line); padding-top:25px; }
.sw-benefits > div > span { font-size:11px; color:#8facc7; }
.sw-benefits h4 { margin:20px 0 14px; font-size:27px; letter-spacing:-.03em; }
.sw-benefits p { color:var(--sw-muted); font-size:15px; }
.sw-faq details { border-top:1px solid var(--sw-line); padding:25px 0; }
.sw-faq summary { cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:25px; list-style:none; font-size:22px; letter-spacing:-.02em; }
.sw-faq summary::-webkit-details-marker { display:none; }
.sw-faq summary span { font-size:23px; transition:rotate .2s; }
.sw-faq details[open] summary span { rotate:45deg; }
.sw-faq details p { color:var(--sw-muted); max-width:760px; margin:20px 0 0; font-size:15px; }
.sw-closing { min-height:440px; padding-block:95px; background:#172e42; }
.sw-closing h3 { max-width:950px; }
.sw-contact { display:flex; justify-content:space-between; gap:28px; align-items:center; width:fit-content; max-width:100%; border-bottom:1px solid currentColor; padding:18px 0; margin-top:42px; text-decoration:none; font-size:15px; }
.sw-contact > span:last-child { font-size:27px; }
/* BRANDING — the studio's original artwork, arranged as editorial specimens. */
.bw-hero { padding:30px clamp(26px,5vw,76px) 25px; background:#f2ede4; }
.bw-hero-layout { display:grid; grid-template-columns:1.08fr 1fr; gap:35px; padding:88px 0 100px; align-items:center; }
.bw-hero-copy { position:relative; z-index:3; }
.studio-world .bw-hero-copy :is(h1,h2) { font-size:clamp(55px,7.8vw,104px); line-height:.98; letter-spacing:-.075em; font-weight:300; margin-bottom:34px; }
.bw-hero-copy :is(h1,h2) em { display:block; margin-top:5px; font-size:.93em; }
.bw-hero-copy p { color:#796369; font-size:17px; }
.bw-brand-stage { height:420px; }
.bw-identity-sheet { position:absolute; inset:0 7% 0 0; background:#531f2b; box-shadow:0 25px 60px #531f2b24; transform:rotate(7deg) translateZ(5px); display:flex; flex-direction:column; align-items:center; justify-content:center; padding:35px; }
.bw-identity-symbol { width:70%; max-height:290px; filter:brightness(0) invert(1); opacity:.84; }
.bw-identity-sheet > span { font-size:9px; letter-spacing:.12em; text-transform:uppercase; color:#eadfe0; align-self:flex-start; margin-top:auto; padding-top:20px; }
.bw-identity-card { position:absolute; left:-12%; bottom:-5%; width:66%; padding:33px 25px 22px; background:#fffdf8; transform:rotate(-8deg) translateZ(65px); box-shadow:0 20px 45px #531f2b2b; animation:sw-float 10s ease-in-out infinite; }
.bw-identity-card img { width:95%; filter:brightness(.55); }
.bw-identity-card > span { display:block; margin-top:25px; color:#796369; font-size:9px; }
.bw-type-card { position:absolute; right:-6%; top:-7%; width:38%; aspect-ratio:1; background:#d2c3b6; color:#531f2b; padding:22px; transform:rotate(-5deg) translateZ(60px); box-shadow:0 15px 45px #531f2b26; }
.bw-type-card > span { font-family:Georgia,'Times New Roman',serif; font-size:clamp(60px,8vw,110px); line-height:1; display:block; letter-spacing:-.08em; }
.bw-type-card small { display:block; margin-top:18px; font-size:9px; }
.bw-positioning { background:#531f2b; color:#f2ede4; --sw-accent:#dbc2b6; --sw-muted:#d6bcc3; --sw-line:#f2ede42b; }
.bw-editorial { display:grid; grid-template-columns:1fr 1.1fr; gap:70px; margin-top:45px; }
.studio-world .bw-statement { max-width:365px; font-size:29px; line-height:1.35; letter-spacing:-.03em; }
.bw-editorial > div p { color:var(--sw-muted); font-size:16px; margin-bottom:20px; }
.bw-word-line { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--sw-line); padding-top:26px; margin-top:45px; font-size:13px; }
.bw-language { padding-bottom:80px; }
.bw-specimen { margin-top:60px; }
.bw-specimen .sw-depth-object { display:grid; grid-template-columns:1fr 1fr; box-shadow:0 22px 60px #531f2b14; }
.bw-specimen-logo { min-height:280px; padding:55px 40px 30px; display:flex; flex-direction:column; justify-content:center; background:#fffdf8; gap:55px; }
.bw-specimen-logo img { width:85%; filter:brightness(.45); margin:auto; }
.bw-specimen-logo > span { font-size:10px; color:#806e72; }
.bw-specimen-type { background:#262326; color:#f2ede4; padding:25px 40px; display:flex; flex-direction:column; justify-content:space-between; }
.bw-letter-pair { font-size:clamp(85px,12vw,160px); line-height:1.15; letter-spacing:-.07em; font-weight:200; }
.bw-letter-pair > span { font-family:Georgia,'Times New Roman',serif; font-size:.7em; font-style:italic; margin-left:15px; color:#ccb9ad; }
.bw-specimen-type > div { display:flex; justify-content:space-between; gap:20px; font-size:10px; }
.bw-palette { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); }
.bw-palette > div { min-height:145px; display:flex; flex-direction:column; justify-content:space-between; padding:24px; font-size:13px; }
.bw-palette > div:nth-child(1) { background:#531f2b; color:#f2ede4; }
.bw-palette > div:nth-child(2) { background:#f2ede4; color:#531f2b; }
.bw-palette > div:nth-child(3) { background:#262326; color:#f2ede4; }
.bw-palette small { font-size:10px; letter-spacing:.08em; }
.bw-identity-details { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:45px; }
.bw-identity-details h4 { font-size:23px; line-height:1.2; letter-spacing:-.03em; margin-bottom:15px; }
.bw-identity-details p { font-size:14px; color:var(--sw-muted); }
.bw-art-direction { background:#d2c3b6; --sw-muted:#725962; }
.bw-art-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.bw-art-copy h3 { font-size:clamp(46px,5.5vw,76px); margin-bottom:30px; }
.bw-art-copy > p:not(.sw-kicker) { color:var(--sw-muted); margin-top:20px; font-size:15px; }
.bw-image-note { display:block; font-size:10px; margin-top:30px; }
.bw-art-stage { min-height:520px; }
.bw-art-stage .sw-depth-object { height:520px; }
.bw-art-photo { position:absolute; width:95%; top:6%; left:0; background:#fff; transform:rotate(5deg) translateZ(15px); box-shadow:0 20px 55px #531f2b21; }
.bw-art-photo img { width:100%; }
.studio-world .bw-art-photo figcaption { padding:0 24px 20px; color:#806e72; font-size:11px; }
.bw-art-caption { position:absolute; bottom:0; left:-8%; width:65%; padding:25px; background:#531f2b; color:#f2ede4; transform:rotate(-7deg) translateZ(65px); box-shadow:0 20px 45px #531f2b2b; animation:sw-float 10s ease-in-out infinite reverse; }
.bw-art-caption > span { font-size:clamp(26px,3.8vw,48px); line-height:1; letter-spacing:-.055em; }
.bw-art-caption small { display:block; margin-top:22px; font-size:10px; }
.bw-art-mark { position:absolute; right:-5%; bottom:5%; width:29%; opacity:.7; filter:brightness(.4); transform:translateZ(100px) rotate(8deg); }
.bw-touchpoint-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin:50px 0; }
.bw-touchpoint-grid > div { border-top:1px solid var(--sw-line); padding-top:22px; }
.bw-touchpoint-grid span { font-size:11px; }
.bw-touchpoint-grid h4 { font-size:25px; letter-spacing:-.04em; margin:25px 0 15px; }
.bw-touchpoint-grid p { font-size:14px; color:var(--sw-muted); }
.bw-application-strip { display:grid; grid-template-columns:1.3fr 1fr .9fr; gap:18px; align-items:center; padding:30px 0; }
.bw-application-strip > div { box-shadow:0 16px 32px #531f2b15; }
.bw-application-cover { background:#262326; color:#f2ede4; padding:28px; min-height:340px; display:flex; flex-direction:column; justify-content:space-between; transform:rotate(-4deg); }
.bw-application-cover img { width:100px; filter:brightness(0) invert(1); opacity:.9; }
.bw-application-cover > span { font-size:39px; line-height:1; letter-spacing:-.05em; margin:30px 0; }
.bw-application-cover small { font-size:8px; }
.bw-application-note { background:#fffdf8; padding:25px; min-height:250px; display:flex; flex-direction:column; justify-content:space-between; transform:rotate(5deg); }
.bw-application-note > span { font:italic 31px/1.1 Georgia,'Times New Roman',serif; letter-spacing:-.04em; }
.bw-application-note img { width:60px; align-self:flex-end; filter:brightness(.5); }
.bw-application-signature { background:#531f2b; color:#f2ede4; padding:25px; min-height:295px; transform:rotate(-3deg); display:flex; flex-direction:column; justify-content:space-between; }
.bw-application-signature img { width:100%; max-width:140px; margin:auto; filter:brightness(0) invert(1); opacity:.9; }
.bw-application-signature > span { font-size:11px; margin-top:20px; }
.bw-process { background:#262326; color:#f2ede4; --sw-accent:#c8b1a6; --sw-muted:#b9aeb3; --sw-line:#f2ede42b; display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.bw-process h3 { font-size:clamp(43px,5vw,70px); }
.bw-process-intro { max-width:380px; color:var(--sw-muted); margin-top:30px!important; }
.bw-process ol { list-style:none; padding:0; margin:0; }
.bw-process li { display:flex; gap:25px; padding:30px 0; border-top:1px solid var(--sw-line); }
.bw-process li > span { font-size:11px; padding-top:7px; color:#c8b1a6; }
.bw-process h4 { font-size:26px; letter-spacing:-.035em; margin-bottom:15px; }
.bw-process li p { font-size:14px; color:var(--sw-muted); }
.bw-delivery { background:#f2ede4; }
.bw-closing { background:#531f2b; color:#f2ede4; --sw-accent:#dac4b8; overflow:hidden; }
.bw-closing > :not(.bw-closing-mark) { position:relative; z-index:1; }
.bw-closing-mark { position:absolute; width:55%; right:-8%; top:5%; opacity:.08; filter:brightness(0) invert(1); }
@keyframes sw-float { 0%,100% { translate:0 0; } 50% { translate:0 -10px; } }
.studio-world.motion-paused * { animation-play-state:paused!important; }
.studio-world.motion-paused .sw-depth-object { transform:none; transition:none; }
.studio-world :is(a,button,summary):focus-visible { outline:2px solid currentColor; outline-offset:5px; }
/* Direct service pages share the same complete experience as the studio drawer. */
.service-page:is(.software-page,.branding-page) #content { width:100%; max-width:none; padding:0; margin:0; display:block; }
.service-page .studio-world { margin:0; }
.service-page .studio-world :is(h1,h2) { color:inherit; }
.service-page:is(.software-page,.branding-page) .site-header { max-width:none; padding-inline:clamp(26px,5vw,76px); }
body.service-page.software-page,[data-theme=dark] body.service-page.software-page { background:#080e18; color:#e9f0f8; }
.service-page.software-page :is(.site-header,.site-footer) { background:#080e18; color:#a5b1c2; border-color:#ffffff26; }
body.service-page.branding-page,[data-theme=dark] body.service-page.branding-page { background:#f2ede4; color:#531f2b; }
.service-page.branding-page :is(.site-header,.site-footer) { background:#f2ede4; color:#735c61; border-color:#531f2b26; }
.service-page:is(.software-page,.branding-page) .related { padding:45px clamp(26px,6.8vw,98px); margin:0; border:0; color:inherit; }
.service-page:is(.software-page,.branding-page) .related h2 { color:inherit; }
@media(min-width:1500px) { .sw-studio-stage,.sw-studio-stage .sw-depth-object { height:560px; } .bw-brand-stage { height:490px; } }
@media(max-width:1000px) {
  .sw-hero-grid { gap:30px; padding-block:65px 90px; }
  .studio-world .sw-hero-copy :is(h1,h2) { font-size:55px; }
  .sw-studio-stage,.sw-studio-stage .sw-depth-object { height:370px; min-height:370px; }
  .sw-note-input { right:-4%; padding:13px; }
  .sw-note-input > span { font-size:10px; }
  .sw-note-review { left:-5%; bottom:0; padding:15px; }
  .sw-note-review > span { font-size:13px; }
  .sw-floating-detail { bottom:3%; }
  .sw-build-steps { grid-template-columns:1fr 1fr; gap:32px; }
  .sw-material-section,.bw-art-layout { gap:40px; }
  .bw-hero-layout { grid-template-columns:1.1fr 1fr; gap:20px; }
  .studio-world .bw-hero-copy :is(h1,h2) { font-size:66px; }
  .bw-brand-stage { height:340px; }
  .bw-type-card { padding:16px; }
  .bw-type-card > span { font-size:65px; }
  .bw-type-card small { font-size:8px; }
  .bw-identity-card { padding:25px 18px 18px; }
  .bw-art-stage,.bw-art-stage .sw-depth-object { min-height:420px; height:420px; }
  .bw-editorial,.bw-process { gap:40px; }
  .bw-specimen-logo { min-height:220px; padding:30px; }
  .bw-application-strip { gap:12px; }
  .bw-application-cover { min-height:280px; padding:22px; }
  .bw-application-cover > span { font-size:31px; }
  .bw-application-note { min-height:210px; padding:20px; }
  .bw-application-note > span { font-size:25px; }
  .bw-application-signature { min-height:250px; padding:20px; }
}
@media(max-width:720px) {
  .project-dialog:is([data-current-project=software],[data-current-project=branding]) .project-window { width:calc(100vw - 22px); height:calc(100dvh - 64px); }
  .sw-topline { align-items:flex-start; gap:15px; }
  .sw-topline .sw-kicker { max-width:180px; }
  .sw-topline .motion-toggle { padding:7px 9px; font-size:10px; }
  .sw-hero-grid,.bw-hero-layout { grid-template-columns:1fr; gap:55px; padding:55px 0 60px; }
  .studio-world .sw-hero-copy :is(h1,h2) { font-size:clamp(46px,9vw,67px); }
  .studio-world .bw-hero-copy :is(h1,h2) { font-size:clamp(51px,11vw,76px); }
  .sw-hero-copy p { max-width:480px; font-size:15px; }
  .sw-studio-stage { width:80%; max-width:440px; margin:0 auto 15px; }
  .sw-studio-stage,.sw-studio-stage .sw-depth-object { height:auto; min-height:0; aspect-ratio:1; }
  .sw-hero-print { width:95%; top:2%; left:0; }
  .sw-hero-print figcaption { padding-inline:10px!important; font-size:7px!important; }
  .sw-note-input { top:-7%; right:-12%; }
  .sw-note-review { bottom:-8%; left:-12%; }
  .sw-floating-detail { right:-14%; bottom:-13%; }
  .sw-floating-detail figcaption { font-size:7px!important; }
  .sw-floating-note small { font-size:8px; }
  .sw-note-review > span { font-size:11px; }
  .sw-bottomline { font-size:9px; margin-top:26px; }
  .sw-bottomline > span { max-width:48%; }
  .sw-bottomline > span:last-child { text-align:right; }
  .sw-intro-copy { grid-template-columns:1fr; gap:22px; margin-block:30px 45px; }
  .studio-world p { font-size:15px; }
  .studio-world .sw-kicker { font-size:10px; }
  .sw-source-list > div { grid-template-columns:1fr 20px; gap:20px; }
  .sw-source-type { grid-column:1; font-size:36px; }
  .sw-source-list > div > div { grid-column:1 / -1; grid-row:2; }
  .sw-source-number { grid-column:2; grid-row:1; }
  .sw-source-list h4 { font-size:23px; }
  .sw-angle-stage { padding:0 15px; margin-top:55px; }
  .sw-angle-label { width:85px; padding:13px; left:-6%; top:5%; }
  .sw-angle-label > span { font-size:45px; }
  .sw-angle-label p { font-size:9px; margin-top:10px; }
  .sw-angle-tab { right:-4%; bottom:10%; max-width:165px; padding:12px; font-size:9px; }
  .sw-angle-print figcaption { font-size:8px!important; padding-bottom:18px!important; }
  .sw-material-section { grid-template-columns:1fr; gap:45px; }
  .sw-material-copy { grid-row:1; }
  .sw-material-copy h3 { font-size:44px; }
  .sw-material-art { margin:5px 12px; }
  .sw-review-line { font-size:10px; gap:15px; }
  .sw-benefits { gap:32px; }
  .sw-benefits h4 { font-size:23px; }
  .sw-benefits p,.sw-build-steps p { font-size:13px; }
  .sw-faq summary { font-size:20px; }
  .sw-closing { min-height:380px; padding-block:65px; }
  .sw-contact { font-size:13px; }
  .bw-brand-stage { width:80%; max-width:360px; height:auto; aspect-ratio:1.05; margin:0 auto 15px; }
  .bw-type-card { right:-11%; }
  .bw-type-card > span { font-size:65px; }
  .bw-type-card small { display:none; }
  .bw-identity-card { left:-12%; bottom:-8%; }
  .bw-identity-card > span { margin-top:20px; font-size:8px; }
  .bw-identity-sheet { padding:25px; }
  .bw-identity-sheet > span { font-size:7px; }
  .bw-editorial { grid-template-columns:1fr; gap:28px; margin-top:35px; }
  .studio-world .bw-statement { font-size:26px; }
  .bw-word-line { flex-wrap:wrap; gap:18px 28px; font-size:12px; }
  .bw-specimen .sw-depth-object { grid-template-columns:1fr; }
  .bw-specimen-logo { min-height:200px; padding:30px; gap:40px; }
  .bw-specimen-type { padding:25px 30px; gap:25px; }
  .bw-letter-pair { font-size:110px; }
  .bw-palette > div { min-height:120px; padding:15px; font-size:10px; }
  .bw-palette small { font-size:8px; }
  .bw-identity-details { grid-template-columns:1fr; gap:28px; }
  .bw-identity-details > div { padding-top:25px; border-top:1px solid var(--sw-line); }
  .bw-art-layout { grid-template-columns:1fr; gap:35px; }
  .bw-art-stage { width:90%; max-width:425px; margin:auto; }
  .bw-art-stage,.bw-art-stage .sw-depth-object { height:auto; min-height:0; aspect-ratio:.86; }
  .bw-art-caption { bottom:0; left:-7%; padding:23px; }
  .bw-art-caption > span { font-size:34px; }
  .bw-art-caption small { font-size:9px; }
  .bw-art-mark { right:-3%; bottom:5%; }
  .bw-touchpoint-grid { grid-template-columns:1fr; gap:28px; }
  .bw-touchpoint-grid h4 { margin-top:17px; }
  .bw-application-strip { grid-template-columns:1.2fr 1fr; gap:14px; padding:5px 0; }
  .bw-application-cover { grid-row:span 2; min-height:310px; padding:20px; }
  .bw-application-cover > span { font-size:27px; }
  .bw-application-note,.bw-application-signature { min-height:160px; padding:16px; }
  .bw-application-note > span { font-size:20px; }
  .bw-application-note img { width:40px; }
  .bw-application-signature img { width:65px; }
  .bw-application-signature > span { font-size:9px; margin-top:10px; }
  .bw-process { grid-template-columns:1fr; gap:35px; }
  .bw-process h3 { font-size:44px; }
}
@media(max-width:380px) {
  .sw-section,.sw-hero,.bw-hero { padding-inline:22px; }
  .studio-world .bw-hero-copy :is(h1,h2) { font-size:46px; }
  .sw-build-steps,.sw-benefits { grid-template-columns:1fr; }
  .studio-world h3 { font-size:39px; }
}
@media(prefers-reduced-motion:reduce) {
  .studio-world *,.studio-world *::before,.studio-world *::after { animation:none!important; transition:none!important; }
  .studio-world .sw-depth-object { transform:none; }
}
