@charset "UTF-8";
/* 写真、制作物展示、進路・生活・質問のコンポーネント。 */
.keep-phrase { display:inline-block; }
.explore-nav { background:#fafafa; border-bottom:1px solid #e8e9ec; }
.explore-nav > div { display:flex; align-items:center; justify-content:flex-end; gap:28px; min-height:48px; font-size:14px; }
.explore-nav > div > span { margin-right:auto; color:#727782; letter-spacing:.08em; }
.explore-nav a { padding-block:13px; color:#4d5665; }
.explore-nav a:hover, .explore-nav a[aria-current] { color:#075dcc; text-decoration:underline; text-underline-offset:5px; }
.learning-photo { margin-top:44px; position:relative; overflow:hidden; border-radius:26px; }
.learning-photo img { width:100%; height:440px; object-fit:cover; object-position:center 58%; }
.learning-photo figcaption { position:absolute; left:0; bottom:0; padding:55px 32px 27px; width:100%; background:linear-gradient(transparent,#102035bd); color:white; font-size:18px; letter-spacing:.08em; }
.generated-world > img { width:100%; height:100%; object-fit:cover; }
.generated-world .world-title { text-shadow:0 2px 20px #000a; font-size:44px; left:28px; bottom:24px; top:auto; }
.generated-world::after { content:""; position:absolute; inset:50% 0 0; background:linear-gradient(transparent,#0812219c); }
.generated-world .world-title { z-index:1; }
.discovery-grid { display:grid; grid-template-columns:1.12fr 1fr; grid-template-rows:350px 205px; gap:22px; }
.discovery-card { position:relative; overflow:hidden; border-radius:26px; color:white; }
.discovery-card img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.discovery-life { grid-row:1/3; }
.discovery-life img { object-position:48%; }
.discovery-card > div { position:absolute; inset:auto 0 0; padding:75px 32px 28px; background:linear-gradient(transparent,#0b172fe8); }
.discovery-card span, .discovery-question div > span { font-size:14px; letter-spacing:.07em; }
.discovery-card h3 { font-size:33px; margin:11px 0; letter-spacing:-.04em; }
.discovery-card p, .discovery-question p { display:flex; justify-content:space-between; gap:12px; font-size:16px; }
.discovery-card b, .discovery-question b { font-size:25px; font-weight:400; }
.discovery-card:hover img { transform:scale(1.035); }
.discovery-question { display:flex; align-items:center; gap:24px; padding:30px; background:#eaf0fc; border-radius:26px; color:#244c87; }
.question-glyph { font-size:105px; letter-spacing:-.1em; font-weight:700; line-height:1; color:#3067d2; }
.discovery-question h3 { font-size:24px; margin:13px 0; }
.studio-story { padding-bottom:110px; }
.studio-story-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:48px; align-items:center; }
.studio-story-grid figure img { width:100%; aspect-ratio:1.2; object-fit:cover; border-radius:26px; }
.studio-story-grid figcaption { font-size:14px; color:var(--muted); margin-top:12px; }
.idea-note h2 { font-size:clamp(28px,3.1vw,42px); }
.idea-note > p:not(.eyebrow) { color:#606b7b; margin-block:25px; }
.prototype-sequence { display:flex; gap:12px; align-items:center; margin-top:32px; }
.prototype-sequence span { padding:14px 19px; border-radius:12px; background:#eaf1ff; color:#2560ae; font-weight:600; }
.prototype-sequence span:last-child { background:#e2ede6; color:#3d6950; }
.prototype-sequence b { color:#9ba6b7; font-weight:400; }
.compact-bridge, .faq-bridge { display:flex; justify-content:space-between; gap:30px; align-items:center; padding-block:65px; }
.compact-bridge h2 { font-size:32px; }
.faq-bridge { font-size:18px; border-top:1px solid var(--line); }
.field-showcase { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:48px; text-align:left; }
.showcase-item { position:relative; min-height:330px; border-radius:26px; overflow:hidden; padding:26px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; }
.showcase-number { position:absolute; top:24px; left:26px; font-size:14px; letter-spacing:.07em; }
.showcase-item > strong { position:relative; font-size:24px; margin-bottom:8px; }
.showcase-item > span:last-child { position:relative; width:100%; display:flex; justify-content:space-between; font-size:16px; }
.showcase-code { background:#132844; color:#e9f3ff; }
.showcase-game { background:#252c4e; color:white; }
.showcase-game > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.showcase-game::after { content:""; position:absolute; inset:0; background:linear-gradient(#1723335c,transparent 25%,#162034d9); }
.showcase-game > span, .showcase-game > strong { z-index:1; }
.showcase-design { background:#e5edde; color:#31513d; }
.mini-terminal { margin-bottom:22px; width:100%; background:#091729; padding:16px; border:1px solid #4d6d9780; border-radius:13px; box-shadow:0 12px 25px #0003; transform:rotate(-4deg); }
.mini-terminal > i { display:inline-block; width:6px; height:6px; border-radius:50%; background:#8595a9; margin-right:4px; }
.mini-terminal pre { font-size:14px; line-height:1.7; color:#a7c1e3; margin:12px 0 0; white-space:pre-wrap; }
.mini-terminal pre b { color:#acdcbf; font-weight:400; }
.specimen-art { position:relative; display:flex; align-items:center; gap:14px; flex-wrap:wrap; width:100%; margin-bottom:28px; }
.specimen-art > b { font-size:64px; font-family:Georgia,serif; line-height:1; }
.specimen-art > span { font-size:73px; color:#bd8c4f; line-height:1; }
.specimen-art > i { width:38px; height:38px; border-radius:50%; background:#466249; border:3px solid #e5edde; margin-right:-27px; margin-top:10px; }
.specimen-art > i:nth-of-type(2) { background:#c3c9a5; }
.specimen-art > i:nth-of-type(3) { background:#ccad7d; }
.subject-art { height:158px; margin-bottom:24px; display:flex; justify-content:space-between; align-items:center; color:var(--accent); background:var(--tint); padding:30px; border-radius:20px; position:relative; overflow:hidden; }
.subject-art > span { font-size:86px; line-height:1; font-weight:700; opacity:.15; }
.subject-art svg { width:70px; height:70px; filter:drop-shadow(0 8px 9px #10264d18); }
.output-spotlight { overflow:hidden; }
.output-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:60px; align-items:center; }
.output-grid h2 { font-size:clamp(30px,3.6vw,48px); }
.output-grid > div > p:not(.eyebrow) { font-size:18px; line-height:1.9; margin:25px 0; }
.spotlight-code { background:#101c2e; color:white; }
.spotlight-code .eyebrow { color:#8faed8; }
.spotlight-code p:not(.eyebrow) { color:#b7c5d9; }
.spotlight-code a { color:#a6cbff; }
.system-canvas { position:relative; min-height:420px; background:radial-gradient(ellipse,#274a7185,transparent 70%); }
.system-phone { width:205px; background:#f4f7fc; border:6px solid #334969; border-radius:28px; box-shadow:0 22px 50px #0005; padding:24px 19px; color:#29435d; transform:rotate(-7deg); }
.system-phone > span { font-size:16px; font-weight:600; }
.system-phone > strong { display:block; font-size:28px; line-height:1.3; margin-top:14px; }
.system-ring { width:120px; height:120px; border-radius:50%; border:10px solid #779ed7; border-right-color:#d7e3f6; display:grid; place-items:center; margin:22px auto; font-size:27px; font-weight:600; }
.system-phone p { padding:10px 0; border-top:1px solid #d0dcec; font-size:14px; color:#405573!important; }
.data-node { position:absolute; right:0; top:100px; background:#234772; border:1px solid #698bb6; box-shadow:0 20px 50px #0004; padding:23px; border-radius:18px; }
.data-node > span { font-size:14px; color:#a8c9f4; display:block; margin-bottom:14px; letter-spacing:.07em; }
.data-node code { font-size:20px; line-height:1.6; }
.system-note { position:absolute; bottom:12px; right:10px; border-top:1px solid #526c8e; color:#93b3de; padding-top:15px; font-size:14px; letter-spacing:.07em; }
.spotlight-design { background:#eaf0e5; color:#294a35; }
.spotlight-design .eyebrow { color:#557758; }
.spotlight-design p:not(.eyebrow) { color:#57725e; }
.design-canvas { position:relative; min-height:390px; padding:20px 5px; }
.design-browser { background:#fffdf7; border:1px solid #d2dbcb; border-radius:16px; padding:25px; box-shadow:0 20px 50px #42653a25; transform:rotate(-4deg); }
.design-browser > span { font-size:24px; font-weight:700; }
.design-browser > div { display:flex; gap:15px; align-items:center; margin:24px 0; }
.design-browser strong { font-size:45px; line-height:1.05; letter-spacing:-.05em; }
.design-browser b { font-size:95px; line-height:1; color:#ae7c3b; }
.design-browser > i { font-style:normal; border-top:1px solid #c0ceba; padding-top:16px; font-size:14px; display:block; }
.type-specimen { background:#dce5ce; border:4px solid #f6f8f1; border-radius:13px; font-size:54px; padding:8px 18px; font-family:Georgia,serif; position:absolute; bottom:0; right:10px; transform:rotate(5deg); }
.type-specimen span { display:block; font-family:inherit; font-size:14px; }
.palette-strip { display:flex; position:absolute; bottom:23px; left:10px; }
.palette-strip i { width:48px; height:48px; border-radius:50%; border:3px solid #eaf0e5; margin-left:-8px; background:#355341; }
.palette-strip i:nth-child(2) { background:#b7c5a3; }.palette-strip i:nth-child(3) { background:#c69d61; }.palette-strip i:nth-child(4) { background:#f5efd8; }
.game-feature { min-height:690px; position:relative; display:grid; align-items:center; background:#192441; color:white; }
.game-feature figure { position:absolute; inset:0; }
.game-feature img { width:100%; height:100%; object-fit:cover; }
.game-feature::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#081224ec, #0d183b85 50%, transparent); }
.game-feature-copy { position:relative; z-index:1; padding-block:80px; }
.game-feature-copy .eyebrow, .game-feature-copy .section-note { color:#b4c8ec; }
.game-feature-copy h2 { font-size:52px; }
.game-feature-copy p:not(.eyebrow):not(.section-note) { margin:28px 0; font-size:18px; color:#e6ecf9; }
.role-career-link { margin-left:25px; }
.project-hero-photo { margin-top:36px; }
.project-hero-photo img { width:100%; height:400px; object-fit:cover; border-radius:26px; }
.project-hero-photo figcaption { display:flex; justify-content:space-between; flex-wrap:wrap; gap:15px; margin-top:15px; font-size:14px; letter-spacing:.04em; color:#61728d; }
.project-hero-photo a { color:var(--blue); }
.process-board { position:relative; display:flex; align-items:center; justify-content:center; gap:32px; padding:42px; margin-top:36px; background:#1a2230; border-radius:26px; overflow:hidden; }
.wireframe-sheet, .polished-sheet { background:#f6f7fb; padding:24px; width:270px; height:240px; border-radius:12px; transform:rotate(-5deg); color:#425578; box-shadow:0 15px 25px #0003; }
.wireframe-sheet > span, .polished-sheet > span { font-size:14px; }
.wireframe-sheet i { display:block; height:20px; border:1px solid #a5b3c9; margin-top:14px; border-radius:4px; }
.wireframe-sheet i:nth-of-type(1) { height:65px; background:repeating-linear-gradient(45deg,transparent,transparent 10px,#d4ddeb 10px,#d4ddeb 11px); }
.wireframe-sheet i:nth-of-type(3) { width:60%; }
.polished-sheet { transform:rotate(4deg); background:#e8eef9; }
.polished-sheet strong { font-size:27px; margin-top:25px; display:block; }.polished-sheet strong span { font-size:14px; font-weight:400; display:block; margin-top:6px; }
.tiny-progress { height:13px; border-radius:20px; background:linear-gradient(90deg,#648ccc 73%,#c6d7ee 73%); margin-top:30px; }
.process-arrow { color:#8faccb; font-size:36px; font-weight:400; }
.review-sticker { color:#142b4b; background:#c6d9ff; border-radius:7px; font-size:17px; padding:23px; transform:rotate(-7deg); }
.campus-life-banner > .container { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:50px; }
.campus-life-banner img { width:100%; height:420px; object-fit:cover; border-radius:26px; }
.campus-life-banner h2 { font-size:38px; }.campus-life-banner .button { margin-top:25px; }
.immersive-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:40px; align-items:center; }
.immersive-hero h1 { font-size:clamp(35px,4.2vw,58px); }.immersive-hero .button { margin-top:28px; }
.hero-editorial-photo { position:relative; min-height:490px; border-radius:28px; overflow:hidden; }
.hero-editorial-photo > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:54%; }
.hero-editorial-photo figcaption { position:absolute; bottom:0; left:0; width:100%; padding:60px 28px 27px; background:linear-gradient(transparent,#0a172fd4); color:white; }
.hero-editorial-photo figcaption span { display:block; font-size:14px; letter-spacing:.06em; margin-bottom:10px; }.hero-editorial-photo figcaption strong { font-size:20px; }
.path-ribbon { display:flex; justify-content:space-between; align-items:center; gap:18px; background:white; border:1px solid #e1e5ed; border-radius:18px; padding:25px 30px; margin-top:35px; }
.path-ribbon span { font-size:17px; }.path-ribbon b { color:#075dcc; font-size:14px; margin-right:10px; }.path-ribbon i { color:#95a3b8; font-style:normal; }
.program-preview { border-radius:20px; overflow:hidden; background:#f0f4fc; }.program-preview .course-art { margin:0; height:220px; }
.program-preview .code-window { transform:scale(.85) rotate(-5deg); }.program-preview .code-orb { display:none; }
.cost-symbol { width:65px; height:65px; border-radius:20px; background:#e6edf9; color:#3568b0; display:grid; place-items:center; font-size:32px; grid-row:1/3; }
.career-cover { margin-top:44px; position:relative; border-radius:28px; overflow:hidden; }
.career-cover img { width:100%; height:490px; object-fit:cover; object-position:50% 46%; }
.career-cover figcaption { position:absolute; inset:auto 0 0; padding:70px 35px 28px; background:linear-gradient(transparent,#132844d1); color:white; }
.career-cover figcaption span { font-size:14px; letter-spacing:.08em; display:block; margin-bottom:8px; }.career-cover strong { font-size:27px; }
.discovery-filters { display:flex; flex-wrap:wrap; gap:10px; margin:25px 0 30px; }.discovery-filters button { background:white; border:1px solid #d9dfe8; color:#515f74; border-radius:30px; padding:10px 21px; font-size:16px; }
.discovery-filters button[aria-pressed="true"] { background:#172d4d; color:white; border-color:#172d4d; }
.career-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.career-card { border:1px solid #e1e6ef; border-radius:24px; padding:30px; background:#f4f7fd; display:flex; flex-direction:column; }
.career-card[data-category="game-cg"] { background:#f3f0fa; }.career-card[data-category="web-ui"] { background:#f0f5ed; }
.career-symbol { align-self:flex-start; display:grid; place-items:center; min-width:80px; height:80px; background:#dce9fb; border-radius:22px; color:#3166ac; font-size:33px; margin-bottom:35px; }
.career-card[data-category="game-cg"] .career-symbol { background:#e3ddf3; color:#695199; }.career-card[data-category="web-ui"] .career-symbol { background:#dce7d7; color:#4d6b3b; }
.career-card .eyebrow { letter-spacing:0; font-size:14px; }.career-card h3 { font-size:23px; margin-bottom:17px; }.career-card > p:not(.eyebrow) { color:#606c7e; margin-bottom:23px; }.career-card a { margin-top:auto; font-size:16px; }
.portfolio-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:65px; align-items:center; margin-top:48px; }.portfolio-board { min-height:420px; position:relative; background:#242e42; border-radius:25px; padding:32px; }
.portfolio-cover { width:78%; min-height:330px; padding:27px; border-radius:10px; transform:rotate(-6deg); background:#e8edf9; color:#224b91; box-shadow:0 20px 30px #0005; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; }
.portfolio-cover > span { font-size:14px; letter-spacing:.04em; z-index:1; }.portfolio-cover strong { font-size:42px; line-height:1.1; letter-spacing:-.05em; z-index:1; }.portfolio-shape { position:absolute; right:-50px; bottom:24px; width:200px; height:200px; border-radius:50%; border:35px solid #aac4f5; }
.portfolio-notes { position:absolute; bottom:20px; right:18px; display:grid; gap:6px; }.portfolio-notes span { color:#2b456e; background:#c4d7fb; border:1px solid #d8e5ff; padding:12px 17px; border-radius:7px; font-size:15px; box-shadow:0 4px 8px #0002; }
.portfolio-layout .support-list p { color:#acb9cd; }.portfolio-layout .support-list article { border-color:#404a5b; }
.career-road { list-style:none; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:35px; }.career-road li { padding:0 25px 0 0; }.career-road b { width:66px; height:66px; display:grid; place-items:center; border-radius:50%; background:#eaf1fe; color:#3670ca; font-size:25px; margin-bottom:22px; position:relative; }
.career-road li + li { border-left:1px solid #dbe3ef; padding-left:25px; }.career-road span { color:#6780a5; font-size:14px; letter-spacing:.05em; }.career-road h3 { font-size:23px; margin:15px 0; }.career-road p { color:var(--muted); }
.life-hero { background:#f3f5f8; }.life-collage { display:grid; grid-template-columns:1.65fr 1fr; gap:20px; margin-top:42px; position:relative; }
.life-collage figure { position:relative; border-radius:26px; overflow:hidden; }.life-collage img { width:100%; height:460px; object-fit:cover; }.life-collage figure:nth-child(2) { margin-top:90px; }.life-collage figure:nth-child(2) img { height:370px; object-position:65%; }
.life-collage figcaption { position:absolute; inset:auto 0 0; color:white; padding:45px 24px 20px; background:linear-gradient(transparent,#132c49cf); font-size:18px; font-weight:600; }.life-stamp { position:absolute; right:20px; top:-100px; color:#2b5bab; font-size:32px; font-weight:700; line-height:.96; letter-spacing:-.05em; transform:rotate(5deg); }.life-stamp span { display:block; font-size:14px; letter-spacing:.01em; font-weight:500; margin-top:15px; }
.day-editorial { display:grid; grid-template-columns:1.2fr 1fr; gap:70px; align-items:start; }.day-editorial figure { position:relative; border-radius:25px; overflow:hidden; }.day-editorial img { width:100%; height:540px; object-fit:cover; }.day-editorial figcaption { position:absolute; inset:auto 0 0; padding:60px 28px 27px; background:linear-gradient(transparent,#10243be6); color:white; }.day-editorial figcaption span { display:block; font-size:14px; margin-bottom:14px; letter-spacing:.05em; }.day-editorial figcaption strong { font-size:24px; line-height:1.5; }
.club-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; margin-top:40px; }.club-grid article { border-radius:24px; background:white; overflow:hidden; }.club-grid article > div:last-child { padding:27px; }.club-grid h3 { font-size:25px; margin-bottom:17px; }.club-grid p:not(.eyebrow) { color:var(--muted); }
.club-art { height:220px; position:relative; display:grid; place-items:center; }.club-art > span { font-size:85px; line-height:1; font-weight:650; transform:rotate(-8deg); }.club-art i { position:absolute; bottom:20px; font-size:14px; letter-spacing:.06em; font-style:normal; }.club-code { background:#dfeafc; color:#376bb5; }.club-game { background:radial-gradient(circle at 35% 20%,#dccafa,#8b76bc); color:white; }.club-game > span { font-size:140px; text-shadow:5px 7px 0 #5b457550; }.club-design { background:#dfe8d5; color:#3e6137; font-family:Georgia,serif; }
.bag-layout { display:grid; grid-template-columns:1fr 1.1fr; gap:60px; align-items:center; }.bag-board { display:grid; grid-template-columns:1.3fr 1fr; gap:20px; border-radius:26px; padding:30px; background:#f2f4f8; }.bag-board > div { background:white; padding:22px 16px; border-radius:18px; text-align:center; }.bag-laptop { grid-row:1/3; align-self:stretch; display:flex; flex-direction:column; justify-content:center; }.bag-board strong { display:block; font-size:18px; margin-top:25px; }.bag-board span { display:block; font-size:14px; color:var(--muted); margin-top:9px; }.bag-laptop > div { border:7px solid #748397; border-bottom-width:15px; border-radius:9px; background:#183557; padding:36px 3px; color:#cbe0ff; font-size:22px; box-shadow:0 10px 14px #273d5923; }.bag-notebook > div { width:75px; height:90px; margin:auto; background:repeating-linear-gradient(#d8e6fa,#d8e6fa 16px,#acc4e9 17px,#acc4e9 18px); border-left:8px solid #6e93c9; border-radius:5px 12px 12px 5px; font-size:45px; color:#315482; transform:rotate(8deg); }.bag-headphones > div { font-size:57px; color:#746ba2; line-height:1; }.bridge-links { display:flex; flex-direction:column; gap:10px; margin-top:25px; }
.faq-hero { background:#edf3ff; }.faq-hero-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:35px; align-items:center; }.faq-hero .button { margin-top:25px; }.question-sculpture { min-height:370px; position:relative; display:grid; place-items:center; }.question-sculpture > b { font-size:300px; line-height:1; font-family:Arial,sans-serif; color:#3973d7; text-shadow:1px 1px #b5d3ff, 3px 4px #1e53a3, 6px 7px #1e53a3, 10px 11px #164890, 18px 26px 25px #1a41882b; transform:rotate(-12deg); }.question-pill { position:absolute; padding:12px 17px; background:white; box-shadow:0 6px 25px #355d9d19; border-radius:22px; color:#37517a; font-size:14px; letter-spacing:.04em; }.question-pill:nth-of-type(1) { top:30px; right:0; transform:rotate(8deg); }.question-pill:nth-of-type(2) { bottom:50px; left:0; transform:rotate(-8deg); }.question-pill:nth-of-type(3) { bottom:10px; right:0; }
.faq-shortcut-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:33px; }.faq-shortcut-grid a { border:1px solid #dce3ec; border-radius:22px; padding:28px; display:grid; grid-template-columns:65px 1fr; gap:8px 15px; align-items:center; }.faq-shortcut-grid b { grid-row:1/3; font-size:39px; color:#4773b3; }.faq-shortcut-grid span { font-size:15px; color:#687384; }.faq-shortcut-grid strong { font-size:19px; }
.faq-tools { padding:30px; border:1px solid #dde5f1; border-radius:23px; background:white; margin-top:25px; }.faq-tools > label { display:block; font-size:16px; font-weight:600; margin-bottom:12px; }.faq-search-row { display:flex; gap:25px; align-items:center; }.faq-search-row input { min-width:0; flex:1; border:1px solid #a5b5ce; padding:15px 18px; font:inherit; border-radius:11px; background:#fafcff; color:#203d68; }.faq-tools .discovery-filters { margin-bottom:0; }.faq-results { margin-top:30px; }.faq-item { border:1px solid #dce3ed; background:white; border-radius:17px; margin-bottom:13px; padding:0 25px; }.faq-item summary { padding:24px 0; display:grid; grid-template-columns:100px 1fr 20px; gap:20px; font-size:18px; font-weight:600; align-items:center; }.faq-category { color:#5576a5; font-size:14px; font-weight:500; }.faq-answer { padding:0 40px 27px 120px; color:#58687e; }.faq-answer p { line-height:1.9; }.faq-answer .text-link { margin-top:20px; }.no-results { text-align:center; padding:45px 25px; border:1px dashed #bac9df; border-radius:22px; margin-top:30px; }.no-results > span { font-size:60px; color:#658bc5; }.no-results h3 { font-size:24px; margin:10px 0; }.no-results p { color:#65758e; margin-bottom:25px; }.faq-final { display:grid; grid-template-columns:1fr 2fr; gap:70px; align-items:center; }.faq-final .question-glyph { font-size:210px; text-align:center; }.faq-final .button { margin-top:25px; }
@media (max-width:1050px) {
 .immersive-grid,.output-grid,.studio-story-grid,.portfolio-layout,.day-editorial,.bag-layout { gap:30px; }
 .showcase-item { padding:22px; }.showcase-item > strong { font-size:21px; }.showcase-number { left:22px; }
 .review-sticker { display:none; }.career-grid { grid-template-columns:repeat(2,1fr); }.career-road { grid-template-columns:repeat(2,1fr); gap:35px 0; }.career-road li:nth-child(3) { border:0; padding-left:0; }
 .faq-shortcut-grid a { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }.faq-shortcut-grid b { font-size:35px; }.faq-shortcut-grid strong { font-size:17px; }
 .data-node { padding:18px; right:-8px; }.data-node code { font-size:16px; }.system-phone { width:190px; }.discovery-card h3 { font-size:28px; }.discovery-question { padding:25px; gap:20px; }.discovery-question h3 { font-size:22px; }.question-glyph { font-size:80px; }
 .bag-board { padding:20px; gap:12px; }.bag-laptop > div { font-size:18px; }.faq-hero h1 { font-size:49px; }.club-grid { gap:18px; }.club-grid article > div:last-child { padding:22px; }.club-grid h3 { font-size:23px; }
}
@media (max-width:800px) {
 .explore-nav > div { gap:23px; }.explore-nav > div > span { display:none; }.explore-nav > div { justify-content:center; }
 .discovery-grid { grid-template-rows:290px 210px; }.discovery-question .question-glyph { display:none; }.discovery-card > div { padding-inline:25px; }
 .studio-story-grid,.output-grid,.campus-life-banner > .container,.portfolio-layout,.day-editorial,.bag-layout { grid-template-columns:1fr; gap:35px; }.studio-story { padding-bottom:80px; }
 .studio-story-grid figure img { aspect-ratio:1.65; }.field-showcase { gap:12px; }.showcase-item { padding:18px; min-height:300px; }.showcase-item > strong { font-size:20px; }.mini-terminal { padding:12px; }.mini-terminal pre { font-size:14px; }.showcase-number { left:18px; }.specimen-art > b { font-size:48px; }.specimen-art > span { font-size:52px; }
 .system-canvas,.design-canvas { width:min(100%,520px); margin:auto; }.system-phone { width:220px; }.data-node { right:10px; padding:25px; }.data-node code { font-size:20px; }.design-browser strong { font-size:52px; }.design-browser b { font-size:110px; }
 .hero-editorial-photo { min-height:420px; }.immersive-grid { gap:25px; }.immersive-hero .page-lead { font-size:17px; }.immersive-hero h1 { font-size:39px; }.hero-editorial-photo figcaption { padding-inline:22px; }.hero-editorial-photo figcaption strong { font-size:18px; }
 .portfolio-board { max-width:560px; width:100%; margin-inline:auto; }.day-editorial img { height:380px; }.day-editorial .day-timeline { display:grid; grid-template-columns:1fr 1fr; gap:15px 30px; }.life-collage img { height:380px; }.life-collage figure:nth-child(2) img { height:290px; }.life-stamp { font-size:27px; }
 .club-grid { grid-template-columns:1fr; }.club-grid article { display:grid; grid-template-columns:.7fr 1fr; }.club-art { height:100%; min-height:210px; }.bag-board { padding:30px; gap:20px; }.bag-laptop > div { padding:60px 5px; }.bag-layout .section-note { max-width:580px; }
 .faq-hero-grid { grid-template-columns:1.5fr 1fr; gap:10px; }.faq-hero h1 { font-size:42px; }.question-sculpture > b { font-size:220px; }.question-sculpture { min-height:310px; }.question-pill { font-size:14px; padding:10px 12px; }.question-pill:nth-of-type(2) { left:-15px; }.question-pill:nth-of-type(3) { bottom:0; }
 .faq-final { grid-template-columns:1fr 2fr; gap:35px; }.faq-final .question-glyph { font-size:150px; }
}
@media (max-width:620px) {
 .explore-nav > div { gap:18px; min-height:44px; }.explore-nav a { font-size:14px; padding-block:10px; }
 .learning-photo { margin-top:30px; border-radius:20px; }.learning-photo img { height:320px; }.learning-photo figcaption { font-size:14px; padding:45px 20px 20px; }
 .discovery-grid { grid-template-columns:1fr; grid-template-rows:auto; gap:18px; }.discovery-life { grid-row:auto; }.discovery-card { min-height:340px; }.discovery-card img { position:absolute; inset:0; }.discovery-card h3 { font-size:28px; }.discovery-card > div { padding:80px 25px 25px; }.discovery-question { min-height:180px; gap:23px; }.discovery-question .question-glyph { display:block; font-size:80px; }.discovery-question h3 { font-size:21px; }.discovery-question div > span { font-size:14px; letter-spacing:0; }
 .studio-story { padding-bottom:60px; }.studio-story-grid figure img { aspect-ratio:1.25; }.idea-note h2 { font-size:29px; }.idea-note > p:not(.eyebrow) { margin-block:20px; }.prototype-sequence { gap:10px; }.prototype-sequence span { padding:12px 15px; }
 .compact-bridge,.faq-bridge { flex-direction:column; align-items:flex-start; padding-block:45px; gap:25px; }.compact-bridge h2 { font-size:28px; }
 .field-showcase { grid-template-columns:1fr; margin-top:30px; gap:16px; }.showcase-item { min-height:300px; padding:25px; }.showcase-number { left:25px; }.mini-terminal { width:90%; max-width:270px; margin:36px auto 24px; padding:16px; }.showcase-item > strong { font-size:25px; }.showcase-game { min-height:330px; }.specimen-art { margin:45px 0 30px; }.specimen-art > b { font-size:70px; }.specimen-art > span { font-size:80px; }
 .subject-art { height:135px; margin-bottom:20px; padding:24px; }.subject-art svg { width:60px; height:60px; }.subject-art > span { font-size:76px; }
 .output-grid > div > p:not(.eyebrow) { font-size:16px; }.output-grid > div > p br { display:none; }.system-canvas { min-height:390px; }.system-phone { width:185px; padding:22px 16px; border-width:5px; }.system-phone > strong { font-size:26px; }.system-ring { width:105px; height:105px; font-size:23px; border-width:8px; }.data-node { top:150px; right:0; padding:16px; }.data-node code { font-size:15px; }.system-note { font-size:14px; right:0; bottom:0; }
 .design-canvas { min-height:350px; }.design-browser { padding:22px; }.design-browser strong { font-size:39px; }.design-browser b { font-size:72px; }.type-specimen { font-size:40px; }.palette-strip i { width:40px; height:40px; }
 .game-feature { min-height:600px; align-items:end; }.game-feature::after { background:linear-gradient(transparent,#081224a6 30%,#081224f2); }.game-feature-copy { padding-block:190px 45px; }.game-feature-copy h2 { font-size:37px; }.game-feature-copy p:not(.eyebrow):not(.section-note) { font-size:16px; }.game-feature img { object-position:57%; }
 .role-career-link { margin-left:0; display:flex; }.project-hero-photo img { height:340px; border-radius:20px; }.project-hero-photo figcaption { font-size:14px; letter-spacing:0; }.generated-world .world-title { font-size:36px; }
 .process-board { padding:25px 20px; gap:16px; flex-direction:column; }.wireframe-sheet,.polished-sheet { width:85%; max-width:280px; height:200px; padding:21px; }.wireframe-sheet i:nth-of-type(1) { height:50px; }.process-arrow { transform:rotate(90deg); font-size:25px; }.polished-sheet strong { margin-top:20px; }.tiny-progress { margin-top:20px; }
 .campus-life-banner img { height:340px; }.campus-life-banner h2 { font-size:30px; }.immersive-grid { grid-template-columns:1fr; gap:30px; }.immersive-hero h1 { font-size:clamp(33px,9vw,45px); }.hero-editorial-photo { min-height:370px; border-radius:22px; }.hero-editorial-photo img { object-position:52%; }.hero-editorial-photo figcaption strong { font-size:19px; }.path-ribbon { flex-direction:column; align-items:flex-start; padding:23px; gap:13px; }.path-ribbon i { transform:rotate(90deg); margin-left:9px; }.path-ribbon span { font-size:16px; }.program-preview .course-art { height:220px; }
 .cost-symbol { grid-row:1; margin-bottom:8px; }.career-cover { margin-top:30px; border-radius:22px; }.career-cover img { height:360px; object-position:50%; }.career-cover figcaption { padding:65px 23px 23px; }.career-cover strong { font-size:22px; }.career-hero .hero-bottom { gap:0; }
 .career-grid { grid-template-columns:1fr; gap:20px; }.career-card { padding:25px; }.career-symbol { margin-bottom:25px; }.discovery-filters { gap:8px; }.discovery-filters button { font-size:14px; padding:10px 16px; }.portfolio-cover { width:90%; padding:22px; }.portfolio-cover strong { font-size:37px; }.portfolio-board { padding:24px; min-height:430px; }.portfolio-notes { bottom:15px; }.portfolio-notes span { font-size:14px; }.career-road { grid-template-columns:1fr; gap:25px; }.career-road li + li { border:0; padding-left:0; }.career-road li { display:grid; grid-template-columns:60px 1fr; gap:5px 20px; padding:0; }.career-road b { width:56px; height:56px; font-size:22px; grid-row:1/4; }.career-road h3 { margin:4px 0 10px; font-size:23px; }.career-road p { grid-column:2; }
 .life-collage { grid-template-columns:1fr; gap:15px; }.life-collage img { height:320px; }.life-collage figure:nth-child(2) { margin-top:0; }.life-collage figure:nth-child(2) img { height:250px; }.life-stamp { display:none; }.life-collage figcaption { font-size:17px; }.day-editorial .day-timeline { display:block; }.day-editorial img { height:350px; }.day-editorial figcaption strong { font-size:22px; }
 .club-grid article { grid-template-columns:1fr; }.club-art { min-height:210px; }.club-grid article > div:last-child { padding:25px; }.club-grid h3 { font-size:24px; }.bag-board { gap:15px; padding:20px; grid-template-columns:1fr 1fr; }.bag-laptop { grid-column:1/3; grid-row:auto; }.bag-laptop > div { width:80%; max-width:235px; margin:auto; padding:45px 10px; }.bag-board strong { margin-top:20px; }.bag-headphones > div { line-height:90px; }
 .faq-hero-grid { grid-template-columns:1fr; }.faq-hero h1 { font-size:clamp(33px,9vw,45px); }.question-sculpture { width:260px; max-width:100%; min-height:260px; margin:30px auto 0; }.question-sculpture > b { font-size:230px; }.question-pill:nth-of-type(1) { top:5px; }.question-pill:nth-of-type(2) { left:0; bottom:40px; }
 .faq-shortcut-grid { grid-template-columns:1fr; gap:13px; }.faq-shortcut-grid a { display:grid; grid-template-columns:60px 1fr; padding:22px; gap:6px 12px; }.faq-shortcut-grid strong { font-size:18px; }.faq-tools { padding:22px; }.faq-search-row { flex-direction:column; gap:8px; align-items:stretch; }.faq-search-row input { width:100%; padding:14px; }.faq-search-row button { align-self:flex-start; }.faq-tools .discovery-filters { margin-top:15px; }.faq-item { padding-inline:21px; }.faq-item summary { grid-template-columns:1fr 20px; gap:8px 14px; font-size:17px; padding-block:20px; }.faq-category { grid-column:1; }.faq-item summary > span:nth-child(2) { grid-column:1; }.faq-item summary > .plus { grid-column:2; grid-row:1/3; }.faq-answer { padding:0 0 23px; }.faq-final { grid-template-columns:1fr; gap:25px; }.faq-final .question-glyph { font-size:90px; text-align:left; }.no-results { padding:30px 20px; }.no-results h3 { font-size:22px; }
}
@media (max-width:360px) {
 .explore-nav > div { gap:12px; }.explore-nav a { font-size:14px; }.discovery-question { padding:23px; gap:18px; }.discovery-question .question-glyph { font-size:58px; }.prototype-sequence span { padding-inline:12px; }.prototype-sequence { gap:7px; }.hero-editorial-photo { min-height:310px; }.career-cover img { height:310px; }.system-phone { width:175px; }.data-node { padding:13px; }.data-node code { font-size:14px; }.design-browser strong { font-size:32px; }.design-browser b { font-size:61px; }.design-browser > div { gap:9px; }.bag-board { padding:16px; gap:12px; }.bag-board > div { padding:20px 12px; }.faq-tools { padding:18px; }.faq-item { padding-inline:18px; }
}
@media (prefers-reduced-motion:reduce) { .discovery-card img { transition:none; }.discovery-card:hover img { transform:none; } }
