.purpose-finder > .sec-head, .production-gateway > .sec-head { margin-bottom:36px; }
.purpose-finder .section-kicker, .planning-gateway .section-kicker, .production-gateway .section-kicker { margin-bottom:18px; }
.purpose-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.purpose-card { min-width:0; padding:36px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.purpose-card h3 { font:600 26px/1.5 var(--sans); color:var(--ink); margin-bottom:18px; }
.purpose-card > p:not(.section-kicker) { font-size:17px; line-height:28px; max-width:500px; }
.purpose-card ul { padding:0; margin:24px 0 0; list-style:none; }
.purpose-card li + li { border-top:1px solid var(--line); }
.purpose-card li a { display:flex; gap:18px; justify-content:space-between; align-items:center; padding-block:13px; font-size:16px; line-height:26px; color:var(--ink); }
.purpose-card > .text-link { margin-top:20px; font-size:14px; }
.purpose-card a:hover { text-decoration:underline; text-underline-offset:4px; }
.planning-gateway { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; border-block:1px solid var(--line); margin-block:40px; }
.planning-gateway p:not(.section-kicker) { font-size:17px; line-height:28px; margin-top:22px; }
.planning-gateway .text-link { margin-top:22px; }
.planning-link-list { display:grid; }
.planning-link-list a { display:grid; gap:14px; padding:28px 0; border-bottom:1px solid var(--line); text-decoration:none!important; }
.planning-link-list a:first-child { border-top:1px solid var(--line); }
.planning-link-list strong { display:flex; justify-content:space-between; gap:20px; font-size:21px; line-height:31px; }
.planning-link-list a > span { color:var(--muted); font-size:16px; line-height:26px; }
.planning-link-list a:hover strong { text-decoration:underline; text-underline-offset:5px; }
.production-route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.production-route-grid > article { min-width:0; display:flex; flex-direction:column; border-top:2px solid var(--ink); padding:28px 24px; background:var(--sage); }
.production-route-grid h3 { font:600 25px/1.4 var(--sans); color:var(--ink); margin-bottom:20px; }
.production-route-grid p:not(.section-kicker) { font-size:17px; line-height:28px; margin-bottom:24px; }
.production-route-grid .text-link { margin-top:auto; align-self:flex-start; }
.planning-heading { padding-top:48px; padding-bottom:56px; }.planning-heading h1 { font-size:60px; line-height:1.3; margin:24px 0; max-width:1050px; }
.planning-heading .intro-desc { font-size:21px; line-height:33px; max-width:850px; }.planning-heading .related-pages { margin-top:32px; }
.planning-cover { margin-block:0 64px; }.planning-cover img { width:100%; max-height:420px; object-fit:cover; object-position:center; }.planning-cover figcaption { margin-top:12px; font-size:13px; color:var(--muted); }
.planning-layout .article-body { max-width:none; }.planning-layout .article-toc { position:sticky; top:120px; }
.planning-layout .planning-steps { list-style:none; counter-reset:planning; padding:0; margin-top:28px; }
.planning-steps > li { counter-increment:planning; position:relative; padding:24px 0 24px 48px; border-top:1px solid var(--line); margin:0; }.planning-steps > li::before { content:counter(planning,decimal-leading-zero); position:absolute; left:0; top:26px; color:var(--ink); font-size:15px; }
.worked-example { border:1px solid var(--line); background:#efeee5; padding:28px; margin-top:28px; }.worked-example .section-kicker { font-size:13px; margin-bottom:16px; }.worked-example h3 { margin:0 0 20px; }.worked-example p + p { margin-top:16px; }
.planning-related .planning-link-list { margin-top:28px; }
.resource-tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }.resource-tool { border:1px solid var(--line); padding:32px; }.resource-tool h3 { font-size:25px; line-height:35px; margin:18px 0; }.resource-tool p { font-size:17px; line-height:28px; }.resource-tool .text-link { margin-top:24px; }
#company,#studio,#partners { scroll-margin-top:130px; }
.table-scroll-hint { display:none; }
.course-inquiry-select { display:block; margin-bottom:28px; font-size:15px; color:var(--ink); font-weight:600; }
.course-inquiry-select select { display:block; width:100%; max-width:100%; margin-top:12px; min-height:52px; padding:12px; border:1px solid #b6c3b1; border-radius:0; background:var(--paper,#f8f6ef); color:var(--ink); font:400 16px/1.5 var(--sans); }
#selected-course { font-weight:600; color:var(--ink); }.collaboration-options { margin-top:28px; }
@media(max-width:1068px){
 .planning-gateway { gap:40px; }.planning-heading h1 { font-size:48px; }.planning-layout .article-toc { top:110px; }.production-route-grid { gap:18px; }.production-route-grid > article { padding:24px 20px; }.purpose-card { padding:28px; }
}
@media(max-width:734px){
 .purpose-grid,.production-route-grid,.planning-gateway,.resource-tools { grid-template-columns:1fr; }.purpose-card { padding:26px 22px; }.purpose-card h3 { font-size:23px; }.purpose-card > p:not(.section-kicker) { font-size:16px; line-height:26px; }.purpose-card li a { font-size:15px; }.planning-gateway { gap:32px; margin-block:20px; }.planning-gateway h2 { font-size:28px; line-height:38px; }.planning-link-list strong { font-size:19px; line-height:28px; }.planning-heading { padding-top:32px; padding-bottom:40px; }.planning-heading h1 { font-size:36px; margin:20px 0; }.planning-heading .intro-desc { font-size:19px; line-height:29px; }.planning-heading .related-pages { align-items:flex-start; flex-direction:column; }.planning-cover { margin-bottom:40px; }.planning-cover img { height:230px; }.planning-layout .article-toc { position:static; }.worked-example { padding:22px; }.resource-tool { padding:24px; }
 .content-table.is-scrollable .table-scroll-hint { display:block; position:sticky; left:0; margin:0 0 12px; font-size:12px; line-height:20px; color:var(--muted); }
}

/* Topic-first headings; labels are removed in source markup. */
.hero-k h1, .page-intro h1, .planning-heading h1, .article-header h1 { overflow-wrap:anywhere; text-wrap:balance; }
.hero-k .hero-k-desc { max-width:780px; }
.hero-index li a { min-height:68px; }
.hero-index .hi-title { font-size:17px; line-height:1.6; }
.ccard-body h3 { margin-top:0; }
.planning-heading h1 { margin-top:0; }
.resource-tool h3 { margin-top:0; }
.content-service-section .format-list article { grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:40px; }
.contact-strip h2 { max-width:20em; font-size:clamp(28px,3vw,40px); }
@media(max-width:734px) {
 .content-service-section .format-list article { grid-template-columns:1fr; gap:12px; }
 .hero-index .hi-title { font-size:15px; }
 .contact-strip h2 { font-size:27px; }
}

/* Hub entry points retained when detailed destinations leave the global menu. */
.hub-shortcuts{display:grid;justify-items:start;gap:16px;margin-top:28px;min-width:0}
.hub-shortcuts .hub-shortcuts-primary{max-width:100%;min-width:0;min-height:50px;font-size:16px;gap:24px}
.hub-shortcuts-secondary{display:flex;flex-wrap:wrap;gap:8px 24px;min-width:0}
.hub-shortcut-link{display:inline-flex;align-items:baseline;gap:16px;max-width:100%;min-width:0;padding-block:10px;border-bottom:1px solid var(--line);color:var(--ink);font-size:15px;font-weight:500;line-height:1.75;overflow-wrap:anywhere}
.hub-shortcut-link>span{flex:none}
.hub-shortcut-link:hover{border-color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.hub-shortcut-link:focus-visible{outline:3px solid #8b5e13;outline-offset:5px}
.hub-shortcuts-formats{gap:0;justify-items:stretch;max-width:460px;border-top:1px solid var(--line)}
.hub-shortcuts-formats .hub-shortcut-link{justify-content:space-between;padding-block:12px}
@media(max-width:734px){.hub-shortcuts{margin-top:24px;gap:14px}.hub-shortcuts-secondary{display:grid;justify-items:start;gap:4px}.hub-shortcuts-formats{gap:0;max-width:none}.hub-shortcuts .hub-shortcuts-primary{font-size:15px;padding-inline:20px}}
