/* One scale for headings with the same purpose; card titles remain a smaller tier. */
:root{--public-display-size:clamp(32px,4.6vw,66px);--public-section-line:1.08}
.punctuation-dot{color:var(--accent);font:inherit;letter-spacing:inherit;display:inline}
.punctuation-dot[data-dot-color="ink"]{color:var(--ink)}
/* Directional markers on action links; the established icon inherits the link color. */
a:is(.text-link,.button,.header-contact)::after,a.hero-moka .art-caption::after{content:"";display:inline-block;width:18px;height:18px;flex:none;background:currentColor;mask:url('/public/icons/arrow-right.svg') center/contain no-repeat;-webkit-mask:url('/public/icons/arrow-right.svg') center/contain no-repeat;vertical-align:middle}
a.hero-moka .art-caption::after{margin-left:8px;width:15px;height:15px}
.project-care{row-gap:24px}
.project-care .project-care-column:first-child h2{text-align:left;margin-left:0;margin-right:auto;width:100%}
.project-care .project-care-column:nth-of-type(2){text-align:right}
.project-care .project-care-column:nth-of-type(2) h2{text-align:right}
.project-care .project-care-column:nth-of-type(2) dd{margin-left:auto;margin-right:0}
.project-care>.project-care-cta{grid-column:1/-1;justify-self:center;justify-content:center;text-align:center;margin-top:8px}
.project-care>.official-work{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 52px;align-items:start;border-top:1px solid var(--line);padding-top:26px;text-align:left}
.official-work h3{font-size:clamp(24px,2.4vw,32px);line-height:1.2;letter-spacing:-.025em;font-weight:600}
.official-work p{font-size:16px;line-height:1.75;max-width:64ch}
.official-work p+p{margin-top:14px}
.site-footer.home-footer .footer-copyright{margin:8px 0 0;text-align:left;font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:767px){.project-care>.official-work{grid-template-columns:1fr;gap:16px}.official-work p{font-size:15px}}
body:not(.detail-page) .hero h1,
body:not(.detail-page) .studio-intro h2,
body:not(.detail-page) .work-process>h2,
body:not(.detail-page) .work-process .process-copy>h2,
body:not(.detail-page) .commercial-services>h2,
body:not(.detail-page) .project-care h2,
body:not(.detail-page) .trust-heading>h2,
body:not(.detail-page) .config-section>h2,
body:not(.detail-page) .config-section>.section-heading>h2,
body:not(.detail-page) .faq-selector>.section-heading>h2,
body:not(.detail-page) .contact>h2,
body:not(.detail-page) .news-preview-heading h2,
body:not(.detail-page) .demo-offer h2{font-size:var(--public-display-size);line-height:var(--public-section-line);font-weight:650;letter-spacing:-.035em}
.news-page .news-intro h1,.detail-page .page-intro h1,.news-page .article-head h1{font-size:var(--public-display-size);line-height:var(--public-section-line);font-weight:650}
.site-footer .footer-bottom{grid-column:1/-1;grid-row:auto;width:100%;margin-top:24px;border-top:1px solid var(--line);padding-top:24px;text-align:center}
.site-footer .footer-bottom .legal-links{display:flex;flex-direction:column;align-items:center;justify-content:center;grid-column:auto;grid-row:auto;gap:8px;margin:0;text-align:center;font-size:13px}
.site-footer .footer-bottom .legal-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;column-gap:28px;row-gap:0;width:100%}
.site-footer .footer-bottom .legal-row a,.site-footer .footer-bottom .legal-row button{display:inline-flex;align-items:center;min-height:36px;margin:0;padding:0;text-align:center;line-height:1.5;font-size:13px}
.site-footer .footer-bottom .footer-powered{margin:16px 0 0;color:var(--muted);font-size:12px;text-align:center}
.site-footer .footer-bottom .footer-powered a{display:inline;min-height:0;color:var(--ink);font-weight:550;text-decoration:none}
.home-footer .footer-copyright{grid-row:1;align-self:end}
.studio-logo-panel{align-items:center;text-align:center}
.studio-logo-wordmark{width:100%;text-align:center}
.wordmark>span{margin-left:.22em}
.legal-document{max-width:900px;margin:0 auto 64px;font-size:16px;line-height:1.8}
.legal-document>section{margin-top:36px;scroll-margin-top:110px}
.legal-document h2{font-size:clamp(22px,2.3vw,28px);line-height:1.3;letter-spacing:-.02em;font-weight:600;margin-bottom:18px}
.legal-document p+p,.legal-document ul+p{margin-top:16px}
.legal-document ul{padding-left:22px;margin:0}
.legal-document li+li{margin-top:12px}
.legal-document a{color:var(--accent);text-underline-offset:3px;overflow-wrap:anywhere}
.legal-revision{font-size:14px;color:var(--muted);margin-top:20px}
.legal-table-scroll{overflow-x:auto;margin-bottom:20px}
.legal-document table{border-collapse:collapse;width:100%;min-width:560px;font-size:14px;text-align:left}
.legal-document th,.legal-document td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.legal-document code{font-size:12px}
@media(max-width:767px){.legal-document{font-size:15px;margin-bottom:40px}.legal-document>section{margin-top:28px}}
@media(max-width:767px){
 :root{--public-display-size:clamp(32px,10vw,42px)}
 .site-footer .footer-bottom{margin-top:24px;padding-top:20px;grid-row:auto}
 .site-footer .footer-bottom .legal-row{gap:0 16px;flex-wrap:nowrap}
 .site-footer .footer-bottom .legal-row a,.site-footer .footer-bottom .legal-row button{font-size:11px;min-height:40px}
 .home-footer .footer-copyright{grid-row:auto;margin:0;text-align:left}
}
