/* Gammaan: blue-violet atmosphere and clear, centered content. */
:root { --future-accent: #594bd0; }
[data-bs-theme="dark"] { --future-accent: #c0b4ff; }
#kt_app_header { background: #ffffffdc !important; backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); border-bottom-color: #a4a5da26; }
[data-bs-theme="dark"] #kt_app_header { background: #1b1b30dc !important; }
#kt_app_header_menu .menu-link { border-radius: 9px; transition: background .2s ease,color .2s ease; }
#kt_app_header_menu .menu-item.here > .menu-link { background: #8b84d918; }
.studio-hero { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(76px,9vw,132px) clamp(90px,10vw,145px); background: radial-gradient(ellipse at 50% 0,#abb5f6a6,transparent 65%),linear-gradient(180deg,#d7dcfa 0%,#e5e8fc 54%,var(--bs-body-bg) 100%); border: 0; }
.studio-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; background-image: repeating-linear-gradient(90deg,transparent 0 calc(8.333% - 1px),#737fd02e calc(8.333% - 1px) 8.333%),repeating-linear-gradient(0deg,transparent 0 71px,#737fd01c 71px 72px); mask-image: linear-gradient(180deg,#0008 0%,#0005 38%,transparent 92%); pointer-events: none; }
.studio-hero::after { content: none; }
.studio-hero-grid { display: flex; flex-direction: column; align-items: center; gap: 0; text-align: center; position: relative; z-index: 1; }
.studio-hero-grid > div:first-child { width: 100%; max-width: 930px; }
.studio-hero .studio-eyebrow { display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: .7rem; letter-spacing: .12em; border: 1px solid #9299d266; border-radius: 30px; padding: 10px 16px; background: #ffffff55; margin-bottom: 28px; color: #5145ac; }
.studio-hero .studio-eyebrow::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #6955ba; box-shadow: 0 0 0 4px #7c70c314; }
.studio-hero h1 { max-width: 900px; margin: 0 auto 26px; font-size: clamp(39px,5.2vw,74px); line-height: 1.2; letter-spacing: -.045em; color: #252345; }
.studio-lead { max-width: 660px; margin-inline: auto; font-size: 1.15rem; line-height: 1.95; color: #5c6082; }
.studio-actions { margin: 34px auto 24px; max-width: 465px; gap: 14px; }
.studio-actions .btn { border-radius: 12px !important; transition: box-shadow .2s ease,background .2s ease,transform .2s ease; }
.studio-actions .btn-primary { background: linear-gradient(135deg,#6655d2,#4b3bb2); border-color: #5d4bc0; box-shadow: 0 8px 24px #6152bd24,inset 0 1px #ffffff30; }
.studio-actions .studio-secondary-action { background: #ffffff6e; border: 1.5px solid #7164c2; color: #51459f; box-shadow: none; }
.studio-actions .studio-secondary-action:hover { background: #ffffffc9; border-color: #5142ac; }
.studio-actions .btn:hover { box-shadow: 0 10px 28px #6152bd28; transform: translateY(-2px); }
.studio-location { font-size: .8rem; color: #64698d; margin-bottom: 0; }
.studio-credentials { background: transparent; border-top: 0; }.credentials-grid { padding-block: 27px; }.credentials-grid > div:not(:last-child) { border-inline-end: 1px solid var(--gt-line); }.credentials-grid strong { font-size: 1.1rem; }.credentials-grid span { font-size: .8rem; }
.studio-section-heading .studio-eyebrow { display: flex; align-items: center; gap: 12px; }.studio-section-heading .studio-eyebrow::before { content: ""; height: 1px; width: 24px; background: currentColor; opacity: .5; }
.studio-service { position: relative; background: linear-gradient(145deg,#ffffffb0,#ffffff10); border-color: #babcd750; border-radius: 18px; overflow: hidden; }.studio-service::after { content: "↗"; position: absolute; top: 25px; inset-inline-end: 25px; color: #aca7cd; font-size: 22px; }.studio-service > i { font-size: 35px; color: #7a70b7; }
.studio-work { border-radius: 18px; border-color: #bcb9d750; }.studio-work-art { background: radial-gradient(ellipse at 90% 5%,#cbc5ec,#e9e6f6); position: relative; }.studio-work:nth-child(2) .studio-work-art { background: radial-gradient(ellipse at 90% 5%,#bcd9d1,#e8f1ee); }.studio-work-art::after { content: ""; position: absolute; inset: 0; background-image: radial-gradient(#80739740 .7px,transparent 1px); background-size: 13px 13px; mask-image: linear-gradient(90deg,transparent,#0007); pointer-events: none; }.work-diagram-nodes span { backdrop-filter: blur(8px); }
.studio-contact-inner { border-radius: 22px; background: radial-gradient(ellipse at 90% 50%,#c8c5ee66,transparent 65%),var(--gt-surface); border-color: #b7aedc66; position: relative; overflow: hidden; }.studio-contact-inner::before { content: ""; position: absolute; width: 200px; height: 200px; inset-inline-end: -60px; top: -140px; border: 1px solid #9c8bc844; transform: rotate(45deg); pointer-events: none; }
.page-hero { background: radial-gradient(ellipse at 90% 0,#cecaef66,transparent 65%),var(--gt-surface); border-bottom: 1px solid #b0a5d326; }.service-detail:target { background: #a083c40b; scroll-margin-top: 100px; }
[data-bs-theme="dark"] .studio-hero { background: radial-gradient(ellipse at 50% 0,#484b8a88,transparent 65%),linear-gradient(180deg,#252842,var(--bs-body-bg)); }
[data-bs-theme="dark"] .studio-hero h1 { color: #eeeaff; }[data-bs-theme="dark"] .studio-lead,[data-bs-theme="dark"] .studio-location { color: #bfc0dd; }[data-bs-theme="dark"] .studio-hero .studio-eyebrow { background: #ffffff05; border-color: #9297d24d; color: #c3bdff; }
[data-bs-theme="dark"] .studio-actions .studio-secondary-action { color: #d2ccff; background: #ffffff06; border-color: #9a8bdb; }[data-bs-theme="dark"] .studio-actions .studio-secondary-action:hover { background: #ffffff10; }
[data-bs-theme="dark"] .studio-service { background: linear-gradient(145deg,#ffffff05,#ffffff00); border-color: #a38cbe30; }[data-bs-theme="dark"] .studio-work-art { background: radial-gradient(ellipse at 90% 5%,#40365c,#2c253e); }[data-bs-theme="dark"] .studio-work:nth-child(2) .studio-work-art { background: radial-gradient(ellipse at 90% 5%,#35574b,#213c33); }[data-bs-theme="dark"] .page-hero { background: radial-gradient(ellipse at 90% 0,#52487d33,transparent 65%),var(--gt-surface); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .studio-service,.studio-work,.service-detail { transition: transform .25s ease,box-shadow .25s ease,border-color .25s ease; }.studio-service:hover,.studio-work:hover { transform: translateY(-5px); box-shadow: 0 16px 40px #59458012; border-color: #aaa0d1; }.service-detail:hover { transform: translateX(3px); }[dir="rtl"] .service-detail:hover { transform: translateX(-3px); } }
@media (max-width: 991.98px) {
    .site-footer { text-align: left; }
    .site-footer-top > .container-xxl,.footer-bottom > .container-xxl { align-items: flex-start !important; justify-content: flex-start !important; }
    .site-footer-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px 18px; }
    .footer-contact { grid-column: 1 / -1; width: 100%; margin-inline: 0; }
    .footer-contact .row { justify-content: flex-start; max-width: 500px; }
    .site-footer-main { padding-block: 38px !important; }
    .site-footer-social,.site-footer-legal { justify-content: flex-start; }
    .footer-links { min-width: 0; }.footer-links a { line-height: 1.9; overflow-wrap: anywhere; }
}
@media (max-width: 575.98px) {
    .studio-hero { padding-block: 60px 84px; }
    .studio-hero .studio-eyebrow { font-size: .55rem; padding: 9px 12px; letter-spacing: .07em; margin-bottom: 24px; }
    .studio-hero h1 { font-size: clamp(35px,9vw,45px); }.studio-lead { font-size: 1rem; line-height: 1.95; }
    .studio-actions { gap: 10px; }.credentials-grid { text-align: center; }.credentials-grid > div:not(:last-child) { border-inline-end: 0; border-bottom: 1px solid var(--gt-line); padding-bottom: 20px; }
    .site-footer-grid { gap: 28px 12px; }.footer-links h3 { font-size: 11px !important; }.footer-links a { font-size: 11px !important; }
}
@media (max-width: 359.98px) { .site-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.footer-links:last-child { grid-column: 1 / -1; }.studio-actions { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .studio-actions .btn,.studio-service,.studio-work,.service-detail { transition: none !important; }.studio-actions .btn:hover { transform: none; } }

/* Contact: one calm surface, one consistent field system. */
.site-footer { text-align: left; }
.contact-hero { padding-block: 58px 70px; background: radial-gradient(ellipse at 100% 0,#d2d5f58c,transparent 65%),var(--gt-surface); }
.contact-hero .page-hero-inner { max-width: 820px; }.contact-hero h1 { font-size: clamp(32px,4vw,50px); line-height: 1.25; }.contact-hero p { max-width: 640px; margin-bottom: 0; }
.contact-section { padding-top: 48px; }
.contact-layout { display: grid; grid-template-columns: .85fr 1.45fr; gap: clamp(28px,4vw,58px); align-items: start; }
.contact-aside { position: sticky; top: 100px; min-width: 0; }
.contact-direct { background: linear-gradient(150deg,#e4e6fa,#f2f2fc 75%); border: 1px solid #d5d7ed; border-radius: 20px; padding: clamp(24px,3vw,36px); }
.contact-direct .studio-eyebrow { font-size: 10px; letter-spacing: .12em; margin-bottom: 18px; }
.contact-direct h2 { font-size: clamp(23px,2.2vw,31px); line-height: 1.4; color: var(--gt-ink); margin-bottom: 14px; }.contact-direct > p { color: #686e8c; font-size: 13px; line-height: 1.8; margin-bottom: 24px; }
.contact-channel { display: flex; gap: 13px; align-items: start; padding-block: 19px; border-top: 1px solid #c5c8e47a; }
.contact-channel > i { display: grid; place-items: center; width: 36px; height: 36px; flex-shrink: 0; border: 1px solid #d0d0ea; background: #ffffff80; border-radius: 10px; font-size: 20px; color: #7163b2; }
.contact-channel > div { min-width: 0; flex: 1; }.contact-channel > div > span { display: block; font-size: 11px; color: #727495; margin-bottom: 6px; }.contact-channel a,.contact-channel strong { color: #363b62; font-size: 14px; font-weight: 600; line-height: 1.8; overflow-wrap: anywhere; }.contact-channel > span { color: #867db3; font-size: 16px; padding-top: 16px; }
.contact-hours { display: grid; grid-template-columns: 1.25fr 1fr; gap: 16px; border-top: 1px solid #c5c8e47a; padding-top: 22px; margin-top: 4px; }.contact-hours span { display: block; font-size: 10px; color: #727495; margin-bottom: 7px; }.contact-hours strong { font-size: 12px; color: #484b6e; line-height: 1.6; }
.contact-next { padding: 28px 8px 8px; }.contact-next h3 { font-size: 15px; color: var(--gt-ink); margin-bottom: 18px; }.contact-next ol { margin: 0; padding: 0; list-style: none; counter-reset: next-step; display: grid; gap: 15px; }.contact-next li { counter-increment: next-step; color: var(--gt-muted); font-size: 12px; line-height: 1.8; display: flex; gap: 12px; align-items: baseline; }.contact-next li::before { content: "0" counter(next-step); font-size: 10px; color: #9383b5; }
.contact-social { display: flex; flex-wrap: wrap; gap: 9px; padding: 22px 8px 0; }.contact-social a { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; border: 1px solid var(--gt-line); color: #7b739a; font-size: 14px; background: var(--bs-body-bg); transition: color .2s ease,border-color .2s ease; }.contact-social a:hover { color: #5146cf; border-color: #a098d1; }
.contact-form-panel { background: var(--bs-body-bg); border: 1px solid var(--gt-line); border-radius: 20px; padding: clamp(24px,3.5vw,42px); box-shadow: 0 14px 40px #29264704; min-width: 0; }
.contact-form-panel .studio-form-intro { margin-bottom: 32px; }.contact-form-panel .studio-form-intro .studio-eyebrow { font-size: 10px; margin-bottom: 15px; }.contact-form-panel .studio-form-intro h2 { font-size: 26px; line-height: 1.4; margin-bottom: 14px; }.contact-form-panel .studio-form-intro p { font-size: 13px; line-height: 1.9; margin: 0; }
.contact-fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }.contact-fieldset + .contact-fieldset { margin-top: 30px; border-top: 1px solid var(--gt-line); padding-top: 26px; }
.contact-fieldset legend { float: none; width: 100%; font-size: 14px; color: var(--gt-ink); font-weight: 700; display: flex; align-items: center; gap: 12px; margin-bottom: 22px; padding: 0; }.contact-fieldset legend span { font-size: 10px; color: #9285b8; font-weight: 500; }
.contact-field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 21px 18px; }.contact-field-wide { grid-column: 1 / -1; }.contact-field { min-width: 0; }
.contact-field label { display: block; font-size: 12px; color: var(--gt-ink); font-weight: 600; margin-bottom: 9px; line-height: 1.6; }.contact-required { color: #8472bb; }.contact-optional { color: var(--gt-muted); font-size: 10px; font-weight: 400; margin-inline-start: 6px; }
.contact-form-panel .contact-input { width: 100%; max-width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid #dcdde9; border-radius: 9px; background-color: #f8f9fc; color: #34394f; font-family: inherit; font-size: 13px; font-weight: 400; line-height: 1.7; box-shadow: none; transition: border-color .2s ease,box-shadow .2s ease,background-color .2s ease; }
.contact-form-panel select.contact-input { padding-inline-end: 38px; cursor: pointer; text-overflow: ellipsis; }
.contact-form-panel textarea.contact-input { min-height: 155px; resize: vertical; }
.contact-form-panel .contact-input::placeholder { color: #9298ab; opacity: 1; }.contact-form-panel .contact-input:hover { border-color: #bbbcd2; }.contact-form-panel .contact-input:focus { border-color: #8b7bc7; background-color: var(--bs-body-bg); box-shadow: 0 0 0 3px #8b7bc714; outline: none; }
.contact-form-panel .contact-input[aria-invalid="true"] { border-color: #cf5b72; }.contact-field-errors:empty { display: none; }.contact-field-errors p { font-size: 11px; color: #c34762; margin: 7px 0 0; line-height: 1.6; }
.contact-submit { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--gt-line); display: flex; justify-content: space-between; align-items: center; gap: 20px; }.contact-submit > a { font-size: 11px; color: var(--gt-muted); }.contact-submit .btn { min-height: 50px; padding: 13px 23px; font-size: 13px; display: flex; align-items: center; gap: 18px; }
[data-bs-theme="dark"] .contact-hero { background: radial-gradient(ellipse at 100% 0,#43466e66,transparent 65%),var(--gt-surface); }
[data-bs-theme="dark"] .contact-direct { background: linear-gradient(150deg,#2c2d48,#25273c); border-color: #464761; }[data-bs-theme="dark"] .contact-direct > p,[data-bs-theme="dark"] .contact-channel > div > span,[data-bs-theme="dark"] .contact-hours span { color: #adb1d0; }[data-bs-theme="dark"] .contact-channel a,[data-bs-theme="dark"] .contact-channel strong,[data-bs-theme="dark"] .contact-hours strong { color: #e0e2f2; }[data-bs-theme="dark"] .contact-channel > i { background: #ffffff05; border-color: #666182; color: #b6a6e9; }[data-bs-theme="dark"] .contact-channel,[data-bs-theme="dark"] .contact-hours { border-color: #76779844; }
[data-bs-theme="dark"] .contact-form-panel .contact-input { background-color: #242635; border-color: #454759; color: #e0e2f2; }[data-bs-theme="dark"] .contact-form-panel .contact-input:focus { background-color: #2b2d3e; border-color: #a796db; }[data-bs-theme="dark"] .contact-form-panel .contact-input::placeholder { color: #9297ae; }
@media (max-width: 991.98px) { .contact-layout { grid-template-columns: 1fr; gap: 32px; }.contact-form-panel { order: 1; }.contact-aside { order: 2; position: static; display: grid; grid-template-columns: 1.2fr 1fr; gap: 0 28px; }.contact-direct { grid-row: span 2; }.contact-social { align-self: start; padding-top: 8px; }.contact-next { padding-top: 20px; } }
@media (max-width: 575.98px) { .contact-hero { padding-block: 38px 44px; }.contact-section { padding-top: 28px; }.contact-form-panel { padding: 24px 20px; border-radius: 15px; }.contact-form-panel .studio-form-intro h2 { font-size: 23px; }.contact-field-grid { grid-template-columns: 1fr; gap: 19px; }.contact-aside { display: block; }.contact-direct { padding: 26px; border-radius: 15px; }.contact-next { padding: 27px 8px 8px; }.contact-social { padding: 20px 8px 0; }.contact-submit { flex-wrap: wrap; gap: 18px; }.contact-submit .btn { margin-inline-start: auto; } }

/* Company pages share the public site's spacing, typography, and surfaces. */
.story-layout,.experience-intro-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(32px,6vw,82px); align-items: center; }
.story-panel h2,.founder-intro h2 { font-size: clamp(27px,3vw,38px); color: var(--gt-ink); line-height: 1.35; letter-spacing: -.025em; margin-bottom: 24px; }
.story-panel p,.story-name p,.founder-intro p,.founder-statement p { font-size: 14px; color: var(--gt-muted); line-height: 1.95; margin-bottom: 20px; }.story-panel .studio-text-link { margin-top: 8px; }
.story-name { padding: clamp(28px,4vw,48px); border: 1px solid #d1d4ef; border-radius: 20px; background: radial-gradient(ellipse at 100% 0,#d9dcfa,#efeffb 70%); position: relative; overflow: hidden; }.story-name > img { display: block; width: 64px; height: 64px; object-fit: contain; margin-bottom: 30px; }.story-name h2 { font-size: 27px; line-height: 1.45; color: var(--gt-ink); margin-bottom: 20px; }.story-name .studio-eyebrow { font-size: 10px; }.story-signature { display: flex; flex-direction: column; gap: 6px; border-top: 1px solid #a6a9d33d; padding-top: 22px; margin-top: 26px; }.story-signature span:first-child { font-size: 13px; font-weight: 700; color: var(--gt-ink); }.story-signature span:last-child { font-size: 11px; color: var(--gt-muted); }
.values-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }.value-card { border: 1px solid var(--gt-line); border-radius: 16px; padding: 30px; background: var(--bs-body-bg); }.value-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }.value-card-top i { color: #8a7cbe; font-size: 30px; }.value-card-top span { color: #a39ab6; font-size: 10px; }.value-card h3 { font-size: 19px; line-height: 1.5; margin-bottom: 12px; color: var(--gt-ink); }.value-card p { margin: 0; color: var(--gt-muted); font-size: 13px; line-height: 1.9; }
.purpose-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }.purpose-card { position: relative; border: 1px solid var(--gt-line); border-radius: 18px; padding: clamp(28px,4vw,44px); overflow: hidden; background: var(--gt-surface); }.purpose-card h2 { font-size: 27px; line-height: 1.45; max-width: 400px; color: var(--gt-ink); }.purpose-card p { font-size: 14px; line-height: 1.95; color: var(--gt-muted); position: relative; z-index: 1; margin: 20px 0 0; }.purpose-card > i { position: absolute; font-size: 120px; inset-inline-end: -22px; bottom: -28px; color: #a29bc319; }.purpose-card-accent { background: linear-gradient(140deg,#5550aa,#3d3b7e); border-color: #615baa; }.purpose-card-accent :is(h2,p,.studio-eyebrow) { color: #fff; }.purpose-card-accent p { color: #e1e0f3; }.purpose-card-accent > i { color: #c9c8f119; }
.founder-layout { display: grid; grid-template-columns: .8fr 1.25fr; gap: clamp(32px,6vw,80px); align-items: start; }.founder-portrait { margin: 0; border: 1px solid var(--gt-line); border-radius: 20px; overflow: hidden; background: var(--bs-body-bg); }.founder-image { aspect-ratio: 1 / 1.08; overflow: hidden; background: #ececf5; }.founder-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }.founder-portrait figcaption { padding: 28px; }.founder-portrait .studio-eyebrow { font-size: 9px; letter-spacing: .08em; margin-bottom: 14px; }.founder-portrait h2 { font-size: 23px; line-height: 1.5; color: var(--gt-ink); margin-bottom: 20px; }.founder-intro p:last-child { margin-bottom: 0; }
.founder-highlights { display: grid; gap: 0; margin-top: 28px; border-top: 1px solid var(--gt-line); }.founder-highlight { display: flex; align-items: start; gap: 14px; padding-block: 18px; border-bottom: 1px solid var(--gt-line); }.founder-highlight i { font-size: 22px; color: #9683bd; flex-shrink: 0; margin-top: 2px; }.founder-highlight p { font-size: 13px; line-height: 1.8; color: var(--gt-muted); margin: 0; }
.founder-focus { margin-top: 30px; }.founder-focus .studio-eyebrow { font-size: 10px; }.founder-focus > div { display: flex; flex-wrap: wrap; gap: 8px; }.founder-focus > div > span { background: var(--gt-surface); border: 1px solid var(--gt-line); border-radius: 7px; font-size: 11px; padding: 8px 11px; color: var(--gt-muted); line-height: 1.6; }
.founder-statement { max-width: 880px; margin-inline: auto; padding-inline-start: 34px; border-inline-start: 3px solid #a49acd; }.founder-statement > i { display: block; font-size: 36px; color: #b0a6cc; margin-bottom: 20px; }.founder-statement h2 { font-size: clamp(26px,3vw,36px); line-height: 1.5; color: var(--gt-ink); margin-bottom: 20px; }.founder-statement p { max-width: 760px; }
.experience-number { padding: clamp(28px,4vw,48px); border: 1px solid #d1d4ef; border-radius: 20px; background: linear-gradient(140deg,#e3e6fb,#f1f2fc); }.experience-number .studio-eyebrow { font-size: 10px; }.experience-number > strong { display: block; font-size: clamp(74px,9vw,128px); line-height: 1.2; font-weight: 700; letter-spacing: -.06em; color: #6c60ad; margin-bottom: 24px; }.experience-number > p { font-size: 14px; line-height: 1.9; color: #646987; }.experience-number > div { display: flex; align-items: start; gap: 12px; font-size: 11px; line-height: 1.9; color: #777c9c; padding-top: 20px; margin-top: 20px; border-top: 1px solid #b0b5dc55; }.experience-number > div > i { font-size: 22px; color: #8d7fba; flex-shrink: 0; }
.experience-list { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.experience-item { display: flex; gap: 18px; align-items: center; padding: 26px; border: 1px solid var(--gt-line); border-radius: 12px; background: var(--bs-body-bg); }.experience-item > span { font-size: 11px; color: #aa9abb; }.experience-item h3 { flex: 1; font-size: 16px; color: var(--gt-ink); line-height: 1.7; margin: 0; }.experience-item > i { font-size: 22px; color: #b5a6c8; }
[data-bs-theme="dark"] .story-name,[data-bs-theme="dark"] .experience-number { background: linear-gradient(140deg,#30324d,#25273b); border-color: #454866; }[data-bs-theme="dark"] .experience-number > strong { color: #b9acf1; }[data-bs-theme="dark"] .experience-number > p,[data-bs-theme="dark"] .experience-number > div { color: #b6bdd7; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .value-card,.purpose-card,.experience-item { transition: transform .35s ease,box-shadow .35s ease,border-color .35s ease; }
    .value-card:hover,.purpose-card:hover,.experience-item:hover { transform: translateY(-6px); box-shadow: 0 18px 45px #60548712; border-color: #b2a9cf; }
    .value-card-top i { transition: transform .4s ease; }.value-card:hover .value-card-top i { transform: rotate(-9deg) scale(1.1); }
    .founder-image img { transition: transform .7s ease; }.founder-portrait:hover img { transform: scale(1.035); }
    .studio-text-link { transition: gap .3s ease; }.studio-text-link:hover { gap: 17px; }
}
@media (max-width: 991.98px) { .story-layout,.experience-intro-grid { grid-template-columns: 1fr; gap: 36px; }.values-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.founder-layout { grid-template-columns: .9fr 1.1fr; gap: 28px; }.founder-portrait figcaption { padding: 22px; }.founder-portrait h2 { font-size: 20px; } }
@media (max-width: 575.98px) { .values-grid,.purpose-grid,.founder-layout,.experience-list { grid-template-columns: 1fr; }.value-card { padding: 26px; }.founder-portrait { max-width: 380px; margin-inline: auto; width: 100%; }.founder-content { margin-top: 4px; }.purpose-card h2 { font-size: 24px; }.story-name h2 { font-size: 25px; }.experience-item { padding: 22px; }.founder-statement { padding-inline-start: 22px; } }
@media (prefers-reduced-motion: no-preference) { .studio-hero::before { animation: hero-atmosphere 1.6s ease-out both; }@keyframes hero-atmosphere { from { opacity: 0; translate: 0 -12px; }to { opacity: 1; translate: 0 0; } } }

/* Outcome-led services and a restrained footer. */
.studio-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.service-detail { position: relative; }.service-anchor { position: absolute; top: 0; width: 1px; height: 1px; scroll-margin-top: 100px; }
.service-detail-copy .service-examples { font-size: 12px; line-height: 1.9; color: var(--gt-muted); margin-bottom: 16px; padding-inline-start: 14px; border-inline-start: 2px solid #aba0cf66; }.service-examples > span { display: block; color: var(--gt-ink); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 5px; }
.engagement-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.engagement-card { position: relative; display: block; border: 1px solid var(--gt-line); border-radius: 16px; padding: 28px; background: var(--bs-body-bg); color: var(--gt-ink); text-decoration: none; }
.engagement-card > span { display: block; color: #9c8cba; font-size: 11px; margin-bottom: 28px; }.engagement-card h3 { font-size: 21px; line-height: 1.5; max-width: 260px; margin-bottom: 15px; color: var(--gt-ink); }.engagement-card p { color: var(--gt-muted); font-size: 13px; line-height: 1.9; margin: 0; padding-bottom: 38px; }.engagement-card > i { font-style: normal; position: absolute; inset-inline-end: 28px; bottom: 24px; color: #8b7bb6; font-size: 22px; }.engagement-card:hover { border-color: #b0a3d0; color: var(--gt-ink); }
.service-faq-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(28px,6vw,80px); align-items: start; }.service-faq-intro h2 { font-size: 34px; line-height: 1.4; color: var(--gt-ink); margin-bottom: 18px; }.service-faq-intro p { font-size: 14px; line-height: 1.9; color: var(--gt-muted); margin-bottom: 24px; }
.service-faq-item { padding-block: 23px; border-top: 1px solid var(--gt-line); }.service-faq-item:last-child { border-bottom: 1px solid var(--gt-line); }.service-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; color: var(--gt-ink); font-size: 15px; font-weight: 600; line-height: 1.7; cursor: pointer; list-style: none; }.service-faq-item summary::-webkit-details-marker { display: none; }.service-faq-item summary > span { color: #8f81b7; font-weight: 400; font-size: 23px; }.service-faq-item[open] summary > span { transform: rotate(45deg); }.service-faq-item p { font-size: 13px; color: var(--gt-muted); line-height: 1.95; margin: 17px 30px 0 0; }.service-faq-item summary:focus-visible { outline: 3px solid #8b80ed; outline-offset: 5px; border-radius: 4px; }
.footer-refined { background: radial-gradient(ellipse at 100% 0,#36366755,transparent 65%),#20213a; color: #c9cadf; border-top: 1px solid #b2abd92e; text-align: left; }
.footer-brand-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 35px; border-bottom: 1px solid #d4d1ed12; }.footer-brand { display: inline-flex; align-items: center; gap: 13px; color: #f0eff9; font-size: 17px; font-weight: 700; }.footer-brand:hover { color: #fff; }.footer-brand img { object-fit: contain; }.footer-brand-row > p { margin: 0; color: #abacc9; font-size: 12px; font-weight: 400; }
.footer-nav-grid { display: grid; grid-template-columns: 1.15fr .8fr 1fr; gap: clamp(32px,7vw,100px); padding-block: 43px; }
.footer-refined .footer-group h2 { color: #9295b7; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; font-weight: 600; margin-bottom: 20px; line-height: 1.6; }
.footer-refined .footer-group > a { display: block; width: fit-content; color: #d6d6e6; font-size: 13px; font-weight: 400; line-height: 1.9; text-decoration: none; margin-bottom: 9px; max-width: 100%; overflow-wrap: anywhere; }.footer-refined .footer-group > a:hover { color: #fff; text-decoration: underline; text-underline-offset: 5px; }
.footer-reach > p { color: #b0b2cd; font-size: 12px; line-height: 1.9; margin-top: 14px; margin-bottom: 0; max-width: 330px; }.footer-reach .footer-opening { font-size: 11px; color: #999dbc; }
.footer-base { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-block: 23px; border-top: 1px solid #d4d1ed12; }.footer-base > p { font-size: 11px; margin: 0; color: #9c9fbb; }
.footer-network { display: flex; gap: 8px; flex-wrap: wrap; }.footer-network a { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #d7d3ef1a; border-radius: 8px; background: #ffffff04; color: #b1b4d1; font-size: 12px; }.footer-network a:hover { background: #c4b8f215; color: #fff; border-color: #c4b8f244; }
.footer-policies { display: flex; flex-wrap: wrap; gap: 20px; }.footer-policies a { color: #9c9fbb; font-size: 11px; text-decoration: none; }.footer-policies a:hover { color: #fff; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .engagement-card { transition: transform .3s ease,box-shadow .3s ease,border-color .3s ease; }.engagement-card:hover { transform: translateY(-5px); box-shadow: 0 15px 35px #56418012; }.engagement-card > i { transition: translate .3s ease; }.engagement-card:hover > i { translate: 3px -3px; }.footer-network a { transition: background .25s ease,color .25s ease; } }
@media (max-width: 991.98px) { .engagement-grid { gap: 16px; }.engagement-card { padding: 24px; }.engagement-card h3 { font-size: 18px; }.footer-nav-grid { gap: 32px; grid-template-columns: 1.1fr .8fr 1fr; }.footer-brand-row { align-items: start; }.footer-brand-row > p { max-width: 230px; }.service-faq-layout { grid-template-columns: 1fr; gap: 30px; } }
@media (max-width: 767.98px) { .engagement-grid { grid-template-columns: 1fr; }.engagement-card > span { margin-bottom: 18px; }.engagement-card p { padding-bottom: 25px; max-width: 550px; }.footer-nav-grid { grid-template-columns: 1fr 1fr; gap: 30px 25px; }.footer-reach { grid-column: 1 / -1; }.footer-brand-row { flex-direction: column; gap: 13px; padding-block: 28px; }.footer-brand-row > p { max-width: none; }.footer-base { flex-wrap: wrap; gap: 18px; }.footer-base > p { flex-basis: 100%; }.footer-policies { margin-inline-start: auto; }.studio-service-grid { grid-template-columns: 1fr; } }
@media (max-width: 359.98px) { .footer-policies { margin-inline-start: 0; flex-basis: 100%; }.footer-brand { font-size: 15px; }.footer-brand img { width: 34px; height: 34px; }.service-faq-intro h2 { font-size: 29px; } }
#kt_scrolltop.is-over-footer { opacity: 0 !important; visibility: hidden; pointer-events: none; }
.skip-link { opacity: 0; pointer-events: none; }.skip-link:focus { opacity: 1; pointer-events: auto; }
