@charset "UTF-8";
:root{--ink:#172235;--muted:#5f6d83;--blue:#244de8;--blue-dark:#193ac0;--line:#dfe4ed;--paper:#fff;--soft:#f5f7fb;--radius:22px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px;scrollbar-gutter:stable}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.dialog-open{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
button,input{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button{color:inherit}
button:disabled{cursor:default}
button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #7390ff;outline-offset:5px}
::selection{background:#dbe4ff;color:#162e86}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{line-height:1.12;letter-spacing:-.045em}
h2{font-size:clamp(2.1rem,3.65vw,3.3rem);font-weight:550}
h3{font-weight:550}
ul,ol{margin:0;padding:0}
[hidden]{display:none!important}
.section-shell{width:min(1240px,calc(100% - 96px));margin-inline:auto}
.skip-link{position:fixed;top:10px;left:20px;z-index:100;transform:translateY(-150%);background:var(--blue);color:white;padding:10px 18px;border-radius:8px}
.skip-link:focus{transform:translateY(0)}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--blue);transform-origin:left;transform:scaleX(0);z-index:60;pointer-events:none}
.site-header{position:sticky;top:0;z-index:30;background:rgb(255 255 255 / .95);border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s;backdrop-filter:blur(18px)}
.site-header.is-scrolled{border-color:var(--line);box-shadow:0 4px 30px #18243c04}
.header-inner{width:min(1360px,calc(100% - 96px));margin:auto;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0}
.monogram{font-size:2.3rem;font-weight:750;line-height:1;letter-spacing:-.11em}
.monogram>span{color:var(--blue)}
.brand-name{font-size:.875rem;font-weight:600;letter-spacing:-.015em}
#main-nav{display:flex;align-items:center;gap:30px}
#main-nav>a{font-size:.875rem;font-weight:500;color:#5d687c;position:relative;padding:11px 0;transition:color .2s}
#main-nav>a:hover,#main-nav>a.is-active{color:var(--blue)}
#main-nav>a:not(.nav-contact)::after{content:"";height:3px;border-radius:3px;background:var(--blue);position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
#main-nav>a.is-active::after{transform:scaleX(1)}
#main-nav>a.nav-contact{border:1px solid var(--line);padding:10px 17px;border-radius:8px;color:var(--ink)}
.nav-contact span{margin-left:13px}
.menu-toggle{display:none}
.eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.14em;color:var(--blue);line-height:1.5}
.eyebrow>span{margin-right:12px;color:#5f6d83}
.small-label{font-size:.75rem;font-weight:650;letter-spacing:.105em;line-height:1.6}
.muted{color:#7a8393}
.blue-text{color:var(--blue)}
.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:center;padding-top:66px}
.hero-copy{padding-block:22px}
.hero h1{font-size:clamp(2.7rem,4.35vw,4.25rem);font-weight:550;line-height:1.08;margin-top:24px;letter-spacing:-.065em}
.hero h1>span{display:block;color:var(--blue);margin-top:7px}
.hero h1 .period{color:var(--ink)}
.hero-description{font-size:1.125rem;line-height:1.8;color:#626d80;max-width:490px;margin-top:28px}
.hero-description strong{color:var(--ink);font-weight:500}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:34px}
.hero-video-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:17px;font-size:.875rem;font-weight:500;color:var(--ink);transition:color .2s}
.hero-play-icon{display:grid;place-items:center;width:29px;height:29px;border:1px solid #cbd6f1;border-radius:50%;color:var(--blue);transition:background .2s,border-color .2s}
.hero-play-icon svg{width:19px;height:19px}
.hero-video-link:hover{color:var(--blue)}
.hero-video-link:hover .hero-play-icon{background:#edf1ff;border-color:#a5b9ef}
.hero-video-duration{font-size:.75rem;color:#5f6d83;font-variant-numeric:tabular-nums;padding-left:2px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;min-height:50px;padding:12px 22px;border:1px solid transparent;border-radius:8px;font-size:.875rem;font-weight:600;line-height:1.5;transition:background .2s,transform .3s var(--ease),box-shadow .3s}
.button:hover{transform:translateY(-2px)}
.button>span{font-size:1.2rem;line-height:1}
.button-primary{background:var(--blue);color:white;box-shadow:0 5px 15px #244de812}
.button-primary:hover{background:var(--blue-dark);box-shadow:0 9px 25px #244de824}
.button-text{padding-inline:15px;background:transparent}
.button-text:hover{background:var(--soft)}
.button-outline{border-color:var(--line);background:white}
.button-light{background:white;color:var(--ink)}
.location{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#5f6d83;font-size:.75rem;margin-top:30px}
.location-dot{width:6px;height:6px;border-radius:100%;background:#537661}
.text-divider{margin-inline:2px;color:#c4cbd5}
.approach-card{background:#172439;color:#fff;border-radius:var(--radius);padding:28px 30px 22px;box-shadow:0 22px 50px -28px #15243a7a;position:relative;overflow:hidden}
.approach-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#abb9ce}
.approach-top .small-label{font-size:.75rem;letter-spacing:.12em}
.approach-symbol{display:grid;place-items:center;width:28px;height:28px;color:#b2c4ff;flex-shrink:0}
.approach-symbol svg{width:26px;height:26px}
.approach-heading{font-size:1.7rem;font-weight:500;letter-spacing:-.045em;line-height:1.25;margin:28px 0}
.approach-heading>span{color:#a5b4cd}
.approach-steps{list-style:none}
.approach-steps li{display:flex;gap:18px;align-items:center;padding:17px 0;border-top:1px solid #344159}
.step-number{font-size:.75rem;font-variant-numeric:tabular-nums;color:#9bb2ff}
.approach-steps li>div{display:grid;gap:3px}
.approach-steps strong{font-size:1rem;font-weight:500}
.approach-steps div>span{font-size:.75rem;color:#a8b6cb}
.step-icon{display:grid;place-items:center;margin-left:auto;color:#9bb2d5;width:22px;height:22px;flex-shrink:0}
.step-icon svg{width:22px;height:22px}
.approach-bottom{margin-top:14px;border-top:1px solid #344159;padding-top:17px;display:flex;align-items:center;justify-content:space-between;color:#a9b7ce;font-size:.75rem}
.mini-monogram{font-weight:700;font-size:1.6rem;color:#a3b8ff;letter-spacing:-.1em;line-height:1}
.credentials-strip{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.3fr 1fr;border-block:1px solid var(--line);padding:28px 0;margin-top:0}
.credentials-strip>div{display:flex;flex-direction:column;gap:5px;padding:0 30px;border-left:1px solid var(--line)}
.credentials-strip>div:first-child{border:0;padding-left:0}
.credentials-strip>div:last-child{padding-right:0}
.credentials-strip strong{font-size:1.1rem;font-weight:550;letter-spacing:-.03em}
.credentials-strip span{font-size:.75rem;color:#5f6d83}
.presentation-section{padding-top:56px}
.presentation-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px;align-items:center;background:#f5f7fb;border:1px solid #e1e7f0;border-radius:24px;padding:32px}
.presentation-copy{padding:15px 8px 15px 12px}
.presentation-copy>.eyebrow{margin-bottom:22px}
.presentation-copy h2{font-size:clamp(2rem,3.3vw,3rem);line-height:1.15}
.presentation-description{max-width:340px;margin-top:22px;color:#5f6d83;font-size:1rem;line-height:1.8}
.presentation-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px;font-size:.75rem;color:#5f6d83}
.presentation-duration{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-variant-numeric:tabular-nums}
.presentation-duration svg{height:17px;width:17px}
.presentation-format{padding-left:12px;border-left:1px solid #cbd5e3;font-size:.75rem;letter-spacing:.065em;line-height:1.6}
.presentation-external{margin-top:27px}
.presentation-player{min-width:0;background:#172439;border:1px solid #24334b;border-radius:15px;overflow:hidden;box-shadow:0 20px 42px -25px #15243a70}
.presentation-player-top{display:flex;align-items:center;gap:11px;padding:15px 18px;color:white;border-bottom:1px solid #344159}
.presentation-avatar{width:33px;height:33px;display:grid;place-items:center;background:#2b3e60;color:#b6c8ff;border:1px solid #42577c;border-radius:9px;font-size:1.2rem;letter-spacing:-.1em;font-weight:700;line-height:1}
.presentation-player-top>div{display:grid;gap:1px}
.presentation-player-top strong{font-size:.8125rem;font-weight:550;line-height:1.5}
.presentation-player-top div>span{font-size:.75rem;color:#b1c0d8;line-height:1.5}
.presentation-host{margin-left:auto;font-size:.75rem;color:#b1c0d8}
.presentation-frame{position:relative;aspect-ratio:4/3;background:#101b2d}
.presentation-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:48px}
.section-heading .eyebrow{margin-bottom:19px}
.section-heading>p{font-size:.875rem;color:var(--muted);line-height:1.8;padding-bottom:4px}
.experience-section{padding-block:106px 96px}
.timeline{border-top:1px solid var(--line)}
.experience-item{display:grid;grid-template-columns:235px 1fr;gap:30px;padding:29px 0;border-bottom:1px solid var(--line)}
.experience-date{position:relative;padding-left:28px;display:flex;flex-direction:column;gap:5px;padding-top:7px}
.timeline-dot{position:absolute;left:0;top:15px;width:8px;height:8px;background:#b5bfd1;border-radius:50%;transition:background .3s,box-shadow .3s}
.is-open .timeline-dot{background:var(--blue);box-shadow:0 0 0 5px #edf1ff}
.experience-date strong{font-size:.9375rem;font-weight:550}
.experience-date>span:last-child{font-size:.75rem;color:#5f6d83}
.experience-main{min-width:0}
.experience-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px;background:none;border:0;padding:0;text-align:left}
.experience-toggle>span:first-child{display:flex;flex-direction:column;gap:6px}
.company{font-size:.75rem;font-weight:650;letter-spacing:.065em;color:#384861;line-height:1.6}
.company>span{font-weight:450;color:#5f6d83}
.role-title{font-size:1.5rem;font-weight:500;letter-spacing:-.035em;line-height:1.3}
.role-context{font-size:.875rem;color:#5f6d83}
.expand-icon{height:34px;width:34px;flex-shrink:0;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;font-size:1.2rem;color:#738198;transition:background .3s,border-color .3s}
.experience-toggle:hover .expand-icon,.is-open .expand-icon{background:#edf1ff;border-color:#edf1ff;color:var(--blue)}
.experience-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s var(--ease),opacity .4s var(--ease)}
.is-open .experience-panel{grid-template-rows:1fr;opacity:1}
.experience-panel-inner{overflow:hidden;min-height:0}
.experience-panel-inner>p{color:#627088;line-height:1.8;font-size:.9375rem;padding-top:23px;max-width:730px}
.contribution-list{list-style:none;margin-top:18px;display:grid;gap:8px;color:#526077;font-size:.875rem}
.contribution-list li{padding-left:18px;position:relative}
.contribution-list li::before{content:"";position:absolute;left:0;top:.7em;width:5px;height:5px;border-radius:50%;background:#8d9cc2}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}
.tags>span{font-size:.75rem;color:#626e85;padding:5px 10px;border:1px solid #e2e6ee;border-radius:5px;line-height:1.4}
.inline-link{display:inline-flex;align-items:center;gap:13px;font-size:.875rem;font-weight:500;background:none;border:0;color:var(--blue);padding:0;text-align:left}
.experience-panel-inner .inline-link{margin-top:22px}
.inline-link:hover{color:#0b268e;text-decoration:underline;text-underline-offset:5px}
.competencies-block{margin-top:48px}
.knowledge-heading{margin-bottom:22px}
.knowledge-heading h3{font-size:1.4rem;line-height:1.35;letter-spacing:-.03em}
.knowledge-heading p{margin-top:6px;font-size:.875rem;color:#5f6d83;line-height:1.7}
.capabilities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.capability-card{min-width:0;padding:24px;background:#fff;border:1px solid #dfe5ef;border-radius:16px}
.capability-card-primary{background:#f1f5ff;border-color:#c8d6fa}
.capability-heading{display:flex;align-items:center;gap:13px;margin-bottom:23px}
.capability-heading h4{font-size:1rem;line-height:1.4;letter-spacing:-.02em}
.knowledge-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:11px;background:#eef2f8;color:#536a8c}
.knowledge-icon svg{width:24px;height:24px}
.capability-card-primary .knowledge-icon{background:#e0e9ff;color:var(--blue)}
.capability-card-primary h4{color:#233d83}
.skill-tags{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;list-style:none}
.skill-tags li{font-size:.875rem;line-height:1.5;color:#56667e;background:#f7f9fc;border:1px solid #e3e8f1;border-radius:6px;padding:5px 9px;max-width:100%;overflow-wrap:anywhere}
.capability-card-primary .skill-tags li{color:#425b91;background:#fff;border-color:#d7e1f8}
.education{margin-top:42px;padding-top:36px;border-top:1px solid var(--line)}
.education-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.education-card{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:16px;row-gap:22px;min-width:0;border:1px solid #dfe5ef;border-radius:16px;padding:24px;background:white}
.education-card-copy{min-width:0}
.education-card-copy h4{font-size:1rem;line-height:1.4;letter-spacing:-.02em;min-height:2.8em}
.education-card-copy p{font-size:.875rem;line-height:1.6;color:#5f6d83;margin-top:6px}
.education-card-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;border-top:1px solid #e8ecf3;padding-top:14px}
.education-type{font-size:.75rem;line-height:1.5;color:#5f6d83}
.education-status{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:75px;font-size:.75rem;line-height:1.5;padding:4px 10px;background:#edf4f0;border-radius:5px;color:#3c6450}
.education-status.in-progress{background:#edf1ff;color:#415aa5}
.portfolio-section{padding-block:96px 104px;background:#f5f7fb;border-block:1px solid #edf0f5}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.project-card{background:white;border:1px solid #e2e7f0;border-radius:var(--radius);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .45s;display:flex;flex-direction:column}
.project-card:hover{transform:translateY(-7px);box-shadow:0 22px 50px -25px #1730563a;border-color:#cbd5e8}
.project-visual{height:338px;position:relative;overflow:hidden;border-bottom:1px solid #e8edf4}
.project-status{position:absolute;z-index:2;top:21px;left:22px;font-size:.75rem;display:inline-flex;align-items:center;gap:7px;background:#ffffffec;border:1px solid #e9edf2;border-radius:30px;padding:6px 11px;color:#58677f}
.project-status i{width:5px;height:5px;border-radius:50%;background:#399069}
.project-status i.blue-dot{background:var(--blue)}
.rut-visual{background:#eaf0f8}
.rut-visual-title{position:absolute;left:30px;bottom:44px;display:flex;align-items:center;gap:9px}
.rut-visual-title img{width:35px;height:35px;border-radius:10px}
.rut-visual-title span{font-weight:700;font-size:1.25rem;letter-spacing:-.045em}
.phone-pair{position:absolute;top:42px;left:37%;width:60%;height:370px;display:flex;gap:15px;transform:rotate(-8deg);transition:transform .6s var(--ease)}
.phone-pair img{width:48%;align-self:flex-start;filter:drop-shadow(0 10px 13px #22375720)}
.phone-pair img:first-child{margin-top:29px}
.project-card:hover .phone-pair{transform:rotate(-6deg) translateY(-7px)}
.motor-visual{background:#e9eef7;display:flex;align-items:center;justify-content:center;padding:70px 20px 51px}
.motor-window{width:96%;border:1px solid #d6deeb;border-radius:10px;box-shadow:0 16px 28px #24365313;overflow:hidden;background:white;transform:rotate(-3deg);transition:transform .6s var(--ease)}
.project-card:hover .motor-window{transform:rotate(-1deg) scale(1.025)}
.window-bar{display:flex;align-items:center;gap:5px;padding:9px 10px;background:#f8f9fc;border-bottom:1px solid #ebedf2}
.window-bar>i{width:5px;height:5px;border-radius:50%;background:#d3dce9}
.window-bar>span{font-size:12px;color:#5f6d83;margin-left:6px}
.motor-window>img{width:100%}
.visual-flow{position:absolute;bottom:16px;display:flex;align-items:center;gap:13px;font-size:.75rem;color:#5f6d83}
.visual-flow span{padding:4px 10px;background:#f7f9ff;border:1px solid #dce3f0;border-radius:5px}
.visual-flow b{font-weight:400}
.project-content{padding:28px 30px 25px;display:flex;flex-direction:column;flex:1}
.project-meta{display:flex;justify-content:space-between;font-size:.75rem;font-weight:600;letter-spacing:.09em;color:#5f6d83}
.project-meta span:first-child{color:#5f6d83}
.project-content h3{font-size:1.7rem;margin-top:15px;line-height:1.2}
.project-content>p{font-size:.9375rem;color:#5f6d83;line-height:1.75;margin-top:15px}
.project-content .tags{margin-bottom:27px}
.project-link{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0 0;border:0;border-top:1px solid var(--line);background:none;font-size:.875rem;font-weight:550;width:100%;text-align:left;margin-top:auto}
.project-link>span{font-size:1.45rem;color:var(--blue);transition:transform .3s}
.project-link:hover>span{transform:translate(3px,-3px)}
.portfolio-more-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:42px 0 23px}
.portfolio-more-heading>p:last-child{font-size:.875rem;color:var(--muted)}
.project-grid-additions{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.project-card-new{min-width:0}
.project-card-new .project-visual{height:228px;display:flex;align-items:center;justify-content:center;padding:64px 23px 41px}
.project-card-new .project-content{padding:25px}
.project-card-new .project-meta{font-size:.6875rem;letter-spacing:.06em;gap:10px}
.project-card-new .project-status{top:17px;left:18px}
.project-title-row{display:flex;align-items:center;gap:11px;margin-top:18px}
.project-title-row h3{margin:0;font-size:1.45rem}
.project-title-icon{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;border-radius:9px;background:#eaf4f0;color:#27624e}
.project-title-icon svg{width:23px;height:23px}
.study-title-icon{background:#fff0ed;color:#a14338}
.game-title-icon{background:#edf0fb;color:#4d608f}
.project-card-new .project-content>p{font-size:.875rem;line-height:1.8}
.project-focus{margin-top:19px;padding-top:16px;border-top:1px solid #edf0f5}
.project-focus strong{font-size:.75rem;font-weight:600;color:#394c67}
.project-focus p{font-size:.8125rem;line-height:1.8;color:var(--muted);margin-top:5px}
.project-card-new .tags{margin-top:18px;margin-bottom:24px}
.project-card-new .tags>span{padding-inline:8px}
.product-visual-caption{position:absolute;bottom:19px;left:12px;right:12px;text-align:center;font-size:.625rem;font-weight:600;letter-spacing:.12em;color:#526f66}
.web-visual{background:#eaf3ef}
.web-product-mark{width:100%;max-width:285px;background:#fff;border:1px solid #cfded7;border-radius:11px;padding:17px 16px;box-shadow:0 12px 24px -15px #23483938;transition:transform .5s var(--ease)}
.web-product-bar{display:flex;align-items:center;gap:8px;font-size:.9375rem;font-weight:650}
.web-product-bar img{border-radius:7px}
.web-product-bar b{font-size:.75rem;color:#527166;font-weight:500}
.web-product-bar svg{width:22px;height:22px;margin-left:auto;color:#6d8d80}
.web-product-tests{display:flex;justify-content:space-between;gap:6px;margin-top:16px;padding-top:13px;border-top:1px solid #e6eee9;font-size:.6875rem;color:#456958}
.study-visual{background:#fcf0ec}
.study-product-mark{width:110px;height:110px;object-fit:contain;transition:transform .5s var(--ease)}
.study-visual .product-visual-caption{color:#926054}
.game-visual{background:#03090e}
.game-product-mark{width:calc(100% + 46px);max-width:none;flex-shrink:0;transition:transform .5s var(--ease)}
.game-visual .product-visual-caption{color:#a3b8c2;font-size:.5625rem;letter-spacing:.1em}
.project-card-new:hover .web-product-mark,.project-card-new:hover .study-product-mark{transform:translateY(-4px)}
.project-card-new:hover .game-product-mark{transform:scale(1.025)}
.rutitest-section{padding-block:116px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.rutitest-copy>.eyebrow{margin-bottom:24px}
.rutitest-copy h2{font-size:clamp(2.7rem,4vw,3.8rem)}
.section-description{font-size:1rem;line-height:1.8;color:#5f6d83;margin-top:26px;max-width:440px}
.tab-list{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-top:34px}
.tab-list button{font-size:.875rem;padding:12px 0;border:0;background:none;position:relative;color:#5f6d83;white-space:nowrap}
.tab-list button::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--blue);transform:scaleX(0);transition:transform .3s var(--ease)}
.tab-list button[aria-selected="true"]{color:var(--blue)}
.tab-list button[aria-selected="true"]::after{transform:scaleX(1)}
.tab-panels{min-height:238px;padding-top:25px;margin-bottom:20px}
.tab-panels h3{font-size:1.1rem;letter-spacing:-.025em;line-height:1.4}
.tab-panels p{font-size:.9375rem;line-height:1.85;color:#5f6d83;margin-top:10px}
.tab-panels .inline-link{margin-top:17px}
[role="tabpanel"]:not([hidden]){animation:panel-in .4s var(--ease)}
.store-links{display:flex;align-items:center;gap:15px;color:#5f6d83;margin-top:18px;font-size:.75rem}
.store-links a:hover{color:var(--blue)}
.store-links>span{color:#c5cbd6}
.rutitest-showcase{background:#edf2fa;border:1px solid #e4eaf3;border-radius:var(--radius);padding:25px 28px 23px;overflow:hidden}
.showcase-top{display:flex;align-items:center;gap:9px;margin-bottom:23px}
.showcase-top img{height:29px;width:29px;border-radius:8px}
.showcase-top>span:not(.showcase-label){font-size:.9375rem;font-weight:650}
.showcase-label{font-size:.75rem;color:#5f6d83;font-weight:500;letter-spacing:.1em;margin-left:auto}
.tablet-capture{width:87%;height:490px;object-fit:contain;margin:0 auto;filter:drop-shadow(0 15px 20px #162c4719);transition:transform .6s var(--ease)}
.rutitest-showcase:hover .tablet-capture{transform:translateY(-4px)}
.showcase-footer{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#5f6d83;border-top:1px solid #dbe3f0;margin-top:23px;padding-top:17px}
.showcase-footer>span:last-child{font-size:1.25rem;color:#637fab}
.contact-section{background:#172439;color:white;padding:76px 0 45px}
.contact-top{display:flex;justify-content:space-between;gap:60px;align-items:flex-end}
.contact-top .eyebrow{color:#9cb5ff;margin-bottom:25px}
.contact-top .eyebrow>span{color:#7e91b0}
.contact-top h2{font-size:clamp(2.6rem,4.7vw,4.1rem)}
.contact-top h2>span{color:#9aabc5}
.contact-description{max-width:365px;padding-bottom:7px}
.contact-description>p{color:#b9c5d8;font-size:1rem;line-height:1.85}
.contact-description>span{display:block;margin-top:18px;font-size:.75rem;color:#899ab6}
.contact-actions{display:flex;align-items:center;gap:22px;border-top:1px solid #35435b;margin-top:42px;padding-top:26px}
.email-link{font-size:clamp(1.2rem,2.5vw,2rem);letter-spacing:-.04em;display:flex;align-items:center;gap:32px}
.email-link>span{color:#9cb5ff;transition:transform .3s}
.email-link:hover>span{transform:translate(3px,-3px)}
.copy-email{border:0;background:none;color:#9aabc5;font-size:.75rem;display:flex;align-items:center;gap:7px;padding:10px 0}
.copy-email span{font-size:1.2rem}
.copy-email:hover{color:white}
.contact-actions>.button{margin-left:auto}
.copy-feedback{font-size:.75rem;color:#bccdff;min-height:1.6em;margin-top:9px}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:28px}
.site-footer>.brand .monogram{font-size:1.8rem}
.site-footer>.brand .brand-name{font-size:.75rem}
.site-footer>span,.site-footer>a:last-child{font-size:.75rem;color:#5f6d83}
.site-footer>a:last-child:hover{color:var(--blue)}
.case-dialog{border:1px solid #dfe5ed;padding:0;width:min(1120px,calc(100% - 40px));max-height:90dvh;border-radius:20px;background:white;color:var(--ink);overscroll-behavior:contain;scrollbar-width:thin;box-shadow:0 40px 100px #0c173940}
.case-dialog::backdrop{background:#0d183dcc;backdrop-filter:blur(7px)}
.case-dialog[open]{animation:dialog-in .35s var(--ease)}
.case-dialog[open]::backdrop{animation:backdrop-in .3s ease}
.dialog-shell{padding:0 48px 48px}
.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:4;background:#ffffffed;backdrop-filter:blur(12px);padding:18px 0;border-bottom:1px solid var(--line)}
.dialog-top .eyebrow{font-size:.75rem}
.dialog-close{width:36px;height:36px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:white;font-size:.875rem;transition:background .2s}
.dialog-close:hover{background:#eef2ff;color:var(--blue)}
.case-intro{padding-top:40px}
.case-intro .small-label{color:#5f6d83;font-size:.75rem}
.case-intro h2{margin-top:16px;font-size:clamp(2.2rem,4vw,3.8rem)}
.case-intro>p:last-child{font-size:1.125rem;color:#5f6d83;margin-top:20px}
.case-context{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-block:36px 45px}
.case-context h3{font-size:1rem;letter-spacing:-.02em}
.case-context p{font-size:.875rem;color:#5f6d83;line-height:1.85;margin-top:10px}
.case-context>div{border-top:1px solid var(--line);padding-top:19px}
.case-context.two-columns{grid-template-columns:1fr 1fr}
.tour-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.tour-heading .eyebrow{font-size:.75rem;margin-bottom:10px}
.tour-heading h3{font-size:1.4rem;line-height:1.3}
.tour-counter{font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--blue);white-space:nowrap}
.tour-phase{display:flex;gap:0;margin-top:22px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.tour-phase>span{flex:1;text-align:center;background:#f7f9fc;color:#5f6d83;font-size:.75rem;padding:10px;transition:color .3s,background .3s}
.tour-phase>span+span{border-left:1px solid var(--line)}
.tour-phase>span.is-current{background:#eaf0ff;color:var(--blue)}
.tour-frame{background:#f3f5f9;border:1px solid #e6eaf2;border-radius:10px;margin-top:18px;display:grid;place-items:center;height:470px;padding:22px;overflow:hidden}
.tour-frame img{width:100%;height:100%;object-fit:contain;min-height:0;filter:drop-shadow(0 4px 10px #17264310)}
.tour-description{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-top:22px;min-height:120px}
.tour-description h4{font-size:1.2rem;letter-spacing:-.03em;line-height:1.4}
.tour-description p{font-size:.875rem;line-height:1.8;color:#5f6d83;max-width:740px;margin-top:8px}
.tour-arrows{display:flex;gap:8px}
.tour-arrows button{border:1px solid #d5dfef;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;background:white;font-size:1.15rem;transition:background .2s,color .2s}
.tour-arrows button:hover:not(:disabled){background:var(--blue);color:white;border-color:var(--blue)}
.tour-arrows button:disabled{opacity:.3}
.tour-dots{display:flex;gap:9px;justify-content:center;margin-top:16px}
.tour-dots button{font-size:.75rem;color:#5f6d83;border:1px solid #e0e6ef;background:white;min-width:37px;height:37px;border-radius:6px;transition:background .3s,color .3s}
.tour-dots button[aria-current="step"]{color:white;background:var(--blue);border-color:var(--blue)}
.case-note{padding:22px 24px;border-radius:10px;background:#f5f7fb;margin-block:30px}
.case-note strong{font-size:.8125rem;font-weight:600}
.case-note p{font-size:.75rem;color:#5f6d83;line-height:1.85;margin-top:6px}
.rut-case-gallery{background:#edf2fa;padding:32px 24px;border-radius:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.rut-case-gallery figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:18px}
.rut-case-gallery img{height:365px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 10px #182f5117)}
.rut-case-gallery figcaption{font-size:.75rem;color:#5f6d83;text-align:center}
.reveal{transition:opacity .75s var(--ease) var(--reveal-delay,0ms),translate .75s var(--ease) var(--reveal-delay,0ms)}
.reveal.is-pending{opacity:0;translate:0 24px}
.reveal.is-visible{opacity:1;translate:0 0}
.hero-enter{animation:hero-in .9s var(--ease) both}
.hero-copy .hero-enter:nth-child(2){animation-delay:80ms}
.hero-copy .hero-enter:nth-child(3){animation-delay:150ms}
.hero-copy .hero-enter:nth-child(4){animation-delay:220ms}
.hero-copy .hero-enter:nth-child(5){animation-delay:280ms}
.approach-card.hero-enter{animation-delay:130ms}
@keyframes hero-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes panel-in{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes dialog-in{from{opacity:0;transform:translateY(20px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
@media(min-width:1500px){.hero{padding-top:84px}}
@media(max-width:1120px){
 .section-shell,.header-inner{width:calc(100% - 64px)}
 .hero{gap:36px;grid-template-columns:1.15fr 1fr}
 .hero h1{font-size:3.2rem}
 .hero-description{font-size:1rem}
 .approach-card{padding:24px}
 .approach-heading{font-size:1.55rem}
 #main-nav{gap:21px}
 .brand-name{display:none}
 .credentials-strip>div{padding-inline:20px}
 .experience-item{grid-template-columns:195px 1fr;gap:20px}
 .rutitest-section{gap:50px}
 .project-visual{height:310px}
 .rut-visual-title{left:23px;font-size:1rem}
 .rut-visual-title>span{font-size:1.1rem}
 .phone-pair{left:36%;width:65%}
 .project-content{padding:25px}
 .project-content h3{font-size:1.45rem}
 .contact-actions{gap:19px}
 .copy-email{font-size:.75rem}
 .tablet-capture{height:450px;width:95%}
}
@media(max-width:860px){
 .portfolio-more-heading{align-items:flex-start;flex-direction:column;gap:7px;margin-top:32px}
 .project-grid-additions{grid-template-columns:minmax(0,1fr);gap:20px}
 .project-card-new{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .project-card-new .project-visual{height:100%;min-height:250px;border-bottom:0;border-right:1px solid #e8edf4;padding-inline:20px}
 .project-card-new .project-content{padding:24px}
 .hero{grid-template-columns:1fr;gap:34px;padding-top:45px}
 .hero-copy{padding:0;max-width:650px}
 .hero h1{font-size:clamp(2.8rem,7.4vw,4.4rem)}
 .hero-description{max-width:520px;font-size:1.1rem}
 .approach-card{max-width:none;padding:25px 30px}
 .approach-heading{font-size:1.65rem;margin-block:18px}
 .approach-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
 .approach-steps li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding-block:16px 8px}
 .approach-steps li>div{grid-column:1/-1;grid-row:2}
 .approach-steps div>span{font-size:.75rem}
 .approach-bottom{margin-top:13px}
 .credentials-strip{gap:20px;padding-block:24px}
 .credentials-strip>div{padding:0 0 0 20px}
 .credentials-strip strong{font-size:.9375rem}
 .credentials-strip span{font-size:.75rem}
 .section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:35px}
 .section-heading>p br{display:none}
 .experience-section{padding-block:75px}
 .experience-item{grid-template-columns:165px 1fr}
 .role-title{font-size:1.3rem}
 .company>span{display:block}
 .company{font-size:.75rem}
 .capabilities-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .capability-card{padding:23px}
 .capability-heading{margin-bottom:18px}
 .education-list{gap:16px}
 .education-card{padding:20px;column-gap:12px}
 .portfolio-section{padding-block:75px}
 .project-grid{gap:20px}
 .project-visual{height:265px}
 .rut-visual-title{bottom:20px}
 .rut-visual-title>span{display:none}
 .phone-pair{top:60px;left:24%;width:77%}
 .project-status{font-size:.75rem;left:17px}
 .motor-visual{padding-inline:12px}
 .visual-flow{gap:7px;font-size:.75rem}
 .visual-flow span{padding:4px 7px}
 .project-content{padding:22px}
 .project-meta{font-size:.75rem}
 .project-content h3{font-size:1.3rem;line-height:1.3}
 .project-content>p{font-size:.875rem}
 .tags>span{font-size:.75rem}
 .rutitest-section{gap:38px;padding-block:80px;grid-template-columns:1.05fr 1fr}
 .rutitest-copy h2{font-size:2.7rem}
 .tab-list{gap:17px}
 .tab-list button{font-size:.8125rem}
 .tab-panels{min-height:300px}
 .rutitest-showcase{padding:20px 15px}
 .showcase-label{display:none}
 .tablet-capture{height:420px;width:100%}
 .contact-top{gap:30px}
 .contact-description{max-width:300px}
 .contact-actions{flex-wrap:wrap}
 .contact-actions>.button{margin-left:auto}
 .email-link{font-size:1.7rem;gap:20px}
 .copy-email{display:none}
 .site-footer>span{max-width:200px;text-align:center}
 .dialog-shell{padding:0 30px 35px}
 .case-context{gap:22px}
 .tour-frame{height:410px}
 .rut-case-gallery{gap:18px}
 .rut-case-gallery img{height:280px}
}
@media(max-width:620px){
 html{scroll-padding-top:85px}
 .section-shell,.header-inner{width:calc(100% - 40px)}
 .header-inner{min-height:72px}
 .brand-name{display:inline;font-size:.8125rem}
 .monogram{font-size:2rem}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:42px;width:42px;border:1px solid #e4e9f0;background:white;border-radius:8px}
 .menu-toggle span{height:1.5px;width:18px;background:var(--ink);transition:transform .25s}
 .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.75px) rotate(45deg)}
 .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
 #main-nav{position:absolute;top:72px;left:0;right:0;padding:14px 20px 22px;background:#fffffffa;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:2px;align-items:stretch;box-shadow:0 12px 20px #14254209;visibility:hidden;opacity:0;transform:translateY(-8px);transition:visibility .2s,opacity .2s,transform .2s;pointer-events:none}
 #main-nav.is-open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
 #main-nav>a{padding:12px 10px;border-radius:5px}
 #main-nav>a.is-active{background:#f0f4ff}
 #main-nav>a:not(.nav-contact)::after{display:none}
 #main-nav>a.nav-contact{margin-top:8px;display:flex;justify-content:space-between}
 .hero{padding-top:37px;gap:30px}
 .eyebrow{font-size:.75rem;letter-spacing:.12em}
 .hero h1{font-size:clamp(2.35rem,9.6vw,3.65rem);margin-top:20px}
 .hero h1>span{margin-top:6px}
 .hero-description{font-size:1rem;line-height:1.85;margin-top:23px}
 .hero-actions{gap:7px;margin-top:25px}
 .button{font-size:.8125rem;min-height:48px;gap:20px;padding:12px 17px}
 .button-text{padding-inline:12px}
 .location{font-size:.75rem;gap:7px;margin-top:24px}
 .approach-card{padding:23px}
 .approach-top .small-label{font-size:.75rem}
 .approach-heading{font-size:1.55rem}
 .approach-steps{display:block}
 .approach-steps li{display:flex;align-items:center;padding:14px 0;gap:17px}
 .approach-steps div>span{font-size:.75rem}
 .approach-steps strong{font-size:.9375rem}
 .approach-bottom{margin-top:2px}
 .credentials-strip{grid-template-columns:1fr;gap:0;padding:5px 0;margin-top:3px}
 .credentials-strip>div,.credentials-strip>div:first-child{border:0;border-bottom:1px solid #e9edf3;display:grid;grid-template-columns:1fr 1.1fr;padding:17px 0;gap:20px;align-items:center}
 .credentials-strip>div:last-child{border-bottom:0}
 .credentials-strip strong{font-size:.875rem}
 .credentials-strip span{font-size:.75rem}
 .experience-section{padding-block:61px 64px}
 h2{font-size:2.05rem}
 .section-heading{gap:17px;margin-bottom:30px}
 .section-heading .eyebrow{margin-bottom:16px}
 .section-heading>p{font-size:.8125rem;line-height:1.75}
 .experience-item{grid-template-columns:1fr;gap:14px;padding-block:25px}
 .experience-date{flex-direction:row;flex-wrap:wrap;gap:12px;align-items:center;padding-top:0;padding-left:20px}
 .experience-date strong{font-size:.75rem}
 .experience-date>span:last-child{font-size:.75rem}
 .timeline-dot{top:8px;width:6px;height:6px}
 .experience-toggle{gap:15px}
 .company>span{display:inline}
 .company{font-size:.75rem}
 .role-title{font-size:1.25rem}
 .role-context{font-size:.8125rem}
 .expand-icon{height:31px;width:31px}
 .experience-panel-inner>p{font-size:.875rem;padding-top:18px}
 .contribution-list{font-size:.8125rem}
 .inline-link{font-size:.8125rem}
 .competencies-block{margin-top:32px}
 .knowledge-heading{margin-bottom:19px}
 .knowledge-heading h3{font-size:1.25rem}
 .knowledge-heading p{font-size:.875rem}
 .capability-card{padding:20px}
 .capability-heading{gap:12px}
 .skill-tags{gap:7px}
 .skill-tags li{padding:5px 8px}
 .education{margin-top:32px;padding-top:30px}
 .education-list{grid-template-columns:minmax(0,1fr);gap:16px}
 .education-card{padding:20px;row-gap:19px}
 .education-card-copy h4{min-height:0}
 .portfolio-section{padding-block:60px 65px}
 .project-grid{grid-template-columns:1fr;gap:26px}
 .project-visual{height:305px}
 .project-status{top:18px;left:18px;font-size:.75rem}
 .rut-visual-title{left:23px;bottom:28px}
 .rut-visual-title>span{display:block;font-size:1.1rem}
 .phone-pair{left:35%;width:65%;top:52px;gap:12px}
 .motor-visual{padding-inline:17px}
 .visual-flow{font-size:.75rem;gap:13px}
 .visual-flow span{padding:4px 9px}
 .project-content{padding:25px}
 .project-content h3{font-size:1.5rem}
 .project-meta{font-size:.75rem}
 .project-content>p{font-size:.875rem}
 .project-link{font-size:.875rem}
 .portfolio-more-heading{margin-block:31px 19px}
 .project-grid-additions{gap:26px}
 .project-card-new{display:flex}
 .project-card-new .project-visual{height:220px;min-height:0;border-right:0;border-bottom:1px solid #e8edf4}
 .project-card-new .project-content{padding:25px}
 .project-card-new .project-meta{font-size:.6875rem}
 .project-card-new .project-title-row h3{font-size:1.5rem}
 .rutitest-section{grid-template-columns:1fr;gap:34px;padding-block:65px}
 .rutitest-copy h2{font-size:2.65rem}
 .section-description{font-size:.9375rem;margin-top:21px}
 .tab-list{gap:27px;margin-top:24px}
 .tab-list button{font-size:.8125rem}
 .tab-panels{min-height:225px;margin-bottom:18px;padding-top:23px}
 .tab-panels p{font-size:.875rem}
 .rutitest-showcase{padding:22px}
 .showcase-label{display:block;font-size:.75rem}
 .tablet-capture{height:430px;width:95%}
 .contact-section{padding-block:56px 31px}
 .contact-top{flex-direction:column;align-items:flex-start;gap:27px}
 .contact-top .eyebrow{margin-bottom:18px}
 .contact-top h2{font-size:2.9rem}
 .contact-description{max-width:none}
 .contact-description>p{font-size:.9375rem}
 .contact-description>span{font-size:.75rem;margin-top:13px}
 .contact-actions{margin-top:28px;padding-top:22px;gap:21px}
 .email-link{font-size:1.5rem;gap:24px;word-break:break-word}
 .contact-actions>.button{margin-left:0}
 .copy-email{display:flex;font-size:.75rem;margin-left:auto}
 .site-footer{gap:18px;padding-block:24px;flex-wrap:wrap}
 .site-footer>.brand .brand-name{font-size:.75rem}
 .site-footer>span{display:none}
 .site-footer>a:last-child{font-size:.75rem}
 .case-dialog{width:calc(100% - 16px);max-height:94dvh;border-radius:13px}
 .dialog-shell{padding:0 19px 28px}
 .dialog-top{padding-block:13px;gap:10px}
 .dialog-top .eyebrow{font-size:.75rem;letter-spacing:.08em}
 .dialog-close{height:34px;width:34px}
 .case-intro{padding-top:25px}
 .case-intro .small-label{font-size:.75rem}
 .case-intro h2{font-size:2.4rem;margin-top:15px}
 .case-intro>p:last-child{font-size:.9375rem;line-height:1.7;margin-top:17px}
 .case-context,.case-context.two-columns{grid-template-columns:1fr;gap:20px;margin-block:27px 32px}
 .case-context>div{padding-top:15px}
 .case-context h3{font-size:.9375rem}
 .case-context p{font-size:.8125rem;margin-top:7px}
 .tour-heading h3{font-size:1.125rem}
 .tour-heading .eyebrow{font-size:.75rem}
 .tour-counter{font-size:.75rem}
 .tour-phase>span{font-size:.75rem;padding:9px 4px}
 .tour-frame{height:350px;padding:10px;margin-top:12px}
 .tour-description{gap:13px;margin-top:18px;min-height:170px}
 .tour-description h4{font-size:1rem}
 .tour-description p{font-size:.8125rem}
 .tour-arrows{gap:5px}
 .tour-arrows button{width:33px;height:33px;font-size:1rem}
 .tour-dots{gap:6px;margin-top:13px}
 .tour-dots button{min-width:33px;width:33px;height:35px;font-size:.75rem}
 .case-note{padding:19px;margin-top:25px}
 .case-note p{font-size:.75rem}
 .rut-case-gallery{gap:13px;padding:24px 13px;grid-template-columns:repeat(3,minmax(0,1fr))}
 .rut-case-gallery img{height:auto;width:100%}
 .rut-case-gallery figcaption{font-size:.75rem;line-height:1.7}
}
@media(max-width:360px){
 .hero-actions{flex-direction:column;align-items:stretch}
 .phone-pair{left:40%;width:68%}
 .rut-visual-title>span{display:none}
 .project-visual{height:265px}
 .tour-dots{gap:4px}
 .tour-dots button{min-width:29px;width:29px}
 .email-link{font-size:1.3rem}
 .company>span{display:block}
 .tab-list{gap:20px}
}
@media(max-width:860px){
 .presentation-card{gap:26px;padding:25px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
 .presentation-copy{padding:10px 0}
 .presentation-copy h2{font-size:2rem}
 .presentation-description{font-size:.9375rem;margin-top:18px}
 .presentation-meta{gap:10px;margin-top:20px}
 .presentation-format{border:0;padding:0}
 .presentation-player-top{padding:12px}
}
@media(max-width:620px){
 .hero-video-link{font-size:.8125rem;margin-top:12px}
 .hero-video-link+.location{margin-top:15px}
 .presentation-section{padding-top:36px}
 .presentation-card{grid-template-columns:minmax(0,1fr);gap:25px;padding:22px 17px 17px;border-radius:20px}
 .presentation-copy{padding:3px 5px 0}
 .presentation-copy>.eyebrow{margin-bottom:16px}
 .presentation-copy h2{font-size:2.1rem}
 .presentation-description{max-width:none;font-size:.9375rem}
 .presentation-meta{margin-top:19px;gap:12px}
 .presentation-format{border-left:1px solid #cbd5e3;padding-left:12px}
 .presentation-external{margin-top:20px}
 .presentation-player{border-radius:11px}
 .presentation-player-top{padding:11px 12px;gap:9px}
 .presentation-player-top strong{font-size:.75rem}
 .presentation-avatar{width:30px;height:30px;font-size:1.1rem}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}
 .reveal.is-pending{opacity:1;translate:none}
 .hero-enter{animation:none}
 .project-card:hover,.project-card:hover .phone-pair,.project-card:hover .motor-window,.rutitest-showcase:hover .tablet-capture,.button:hover{transform:none}
 .project-card-new:hover .web-product-mark,.project-card-new:hover .study-product-mark,.project-card-new:hover .game-product-mark{transform:none}
}
@media print{
 .presentation-player,.hero-video-link{display:none}
 .presentation-card{display:block;padding:20px}
 .site-header,.hero-actions,.approach-card,.menu-toggle,.project-link,.contact-actions,.site-footer,.case-dialog{display:none}
 .section-shell{width:100%}
 .hero,.experience-item,.rutitest-section{display:block}
 .hero,.experience-section,.portfolio-section,.rutitest-section,.contact-section{padding:25px 0}
 .experience-panel{grid-template-rows:1fr!important;opacity:1}
 .reveal{opacity:1!important;translate:none!important}
 .contact-section{background:white;color:black}
}
