:root { --paper:#fff; --ink:#1d1d1f; --orange:#b6502d; --line:#e6e6e8; --muted:#6e6e73; }
body { margin:0; padding-top:52px; background:var(--paper); color:var(--ink); font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-optical-sizing:auto; -webkit-font-smoothing:antialiased; }
h1,h2,h3,button,input,textarea,select { font-family:inherit; }
.wrapper { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
.site-header { width:100%; height:52px; display:block; position:fixed; inset:0 0 auto; z-index:10; background:rgba(245,245,247,.72); -webkit-backdrop-filter:saturate(180%) blur(20px); backdrop-filter:saturate(180%) blur(20px); border:0; box-shadow:none; }
.header-inner.wrapper { width:min(1080px,calc(100% - 48px)); height:100%; display:flex; align-items:center; justify-content:flex-start; gap:38px; margin-inline:auto; }
.brand-name { font-family:"Minecraft Rus",monospace; font-size:17px; font-weight:400; color:#252527; letter-spacing:0; line-height:1.35; white-space:nowrap; }
.site-header nav { display:flex; align-items:center; gap:30px; font-size:12px; font-weight:400; }
.site-header nav a { color:#454548; }
.site-header nav a:hover,.site-header nav a[aria-current="page"] { color:#a44325; }
.header-auth { display:flex; align-items:center; gap:22px; margin-left:auto; flex-shrink:0; }
.site-header .header-auth .button.small { min-height:34px; padding:6px 0; font-size:12px; line-height:1.4; font-weight:400; border:0; border-radius:0; color:#454548; background:transparent; }
.site-header .header-auth .button.small:hover { color:#a44325; background:transparent; }
.site-header .header-auth .violet { color:#a44325; }
#account-button { max-width:210px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.site-header .header-auth #account-button { min-height:34px; padding:4px 10px; gap:8px; border:1px solid #e2dcd8; border-radius:10px; background:#fff; color:#36302d; }
.site-header .header-auth #account-button:hover { background:#f8eee8; border-color:#d9bbaa; }
#account-button[data-initial]:not([data-initial=""])::before { content:attr(data-initial); display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; border-radius:6px; background:#efdcd0; color:#934628; font-size:12px; font-weight:600; }
.account-partner-link { display:block; color:#a44325; font-size:13px; line-height:1.5; margin:0 0 20px; }

.growth-scene { position:relative; isolation:isolate; width:min(960px,100%); margin:32px auto 24px; padding:0; border:0; background:transparent; }
.growth-scene video { display:block; width:100%; height:auto; aspect-ratio:15/7; pointer-events:none; background:#fff; }
.growth-scene.still::after { content:""; display:block; width:100%; aspect-ratio:15/7; background:#fff url('/assets/site/assets/online-growth-bright-poster.jpg') center/contain no-repeat; }
.join-feed { --join-row:34px; position:absolute; z-index:1; left:10%; top:14%; width:75%; height:98px; overflow:visible; pointer-events:none; text-align:left; font-family:"Minecraft Rus",monospace; font-size:16px; font-weight:400; -webkit-font-smoothing:none; perspective:850px; perspective-origin:left center; }
.join-log { position:relative; height:100%; transform:rotateY(24deg) rotateX(8deg) rotateZ(-2deg); transform-origin:left center; transform-style:preserve-3d; }
.join-log p { --message-row:0; position:absolute; top:calc(var(--message-row) * var(--join-row)); left:0; width:fit-content; max-width:100%; height:auto; margin:0; padding:0; background:none; color:#b2942b; text-shadow:none; line-height:1.5; white-space:nowrap; opacity:0; animation:join-message 10.8s ease infinite both; will-change:opacity,transform; }
.join-log p:nth-child(3n+2) { --message-row:1; }
.join-log p:nth-child(3n) { --message-row:2; }
.join-log p:nth-child(1) { animation-delay:-1.2s; }
.join-log p:nth-child(2) { animation-delay:-.6s; }
.join-log p:nth-child(3) { animation-delay:0s; }
.join-log p:nth-child(4) { animation-delay:4.2s; }
.join-log p:nth-child(5) { animation-delay:4.8s; }
.join-log p:nth-child(6) { animation-delay:5.4s; }
.growth-scene.paused .join-log p { animation-play-state:paused; }
.growth-scene.still .join-log p { animation:none; opacity:0; transform:none; }
.growth-scene.still .join-log p:nth-child(-n+3) { opacity:.85; }
@keyframes join-message {
 0% { opacity:0; transform:translate3d(-10px,0,0); }
 7%,32% { opacity:.85; transform:translate3d(0,0,0); }
 46%,100% { opacity:0; transform:translate3d(20px,0,0); }
}
.partner-welcome { max-width:650px; border:1px solid #e5dfd9; padding:32px; border-radius:14px; background:#fcfaf7; }
.partner-welcome h2,.partner-link-card h2 { font-size:27px; line-height:1.25; letter-spacing:-.8px; font-weight:600; margin:0 0 17px; }
.partner-welcome p,.partner-link-card p { font-size:16px; line-height:1.7; color:#77716b; margin:0 0 24px; }
.partner-welcome small { display:block; color:#8a827b; line-height:1.6; margin-top:20px; font-size:12px; }
.partner-layout { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:24px; max-width:1040px; }
.partner-link-card { border:1px solid #e7e0d9; border-radius:14px; padding:32px; background:#fff; }
.partner-eyebrow { display:block; font-size:12px; color:#a77556; margin-bottom:16px; }
.partner-link-card label { display:block; color:#77716b; font-size:12px; margin-bottom:8px; }
.partner-copy-row { display:flex; gap:10px; }
.partner-copy-row input { min-width:0; flex:1; width:100%; background:#faf8f5; border:1px solid #e3dcd5; border-radius:7px; padding:12px; font:inherit; font-size:14px; color:#62554a; }
.partner-link-card small { display:block; font-size:12px; line-height:1.7; color:#8a827b; margin-top:17px; }
.partner-stat { border:1px solid #e7e0d9; border-radius:14px; background:#f8f3ed; padding:29px; display:flex; flex-direction:column; align-items:flex-start; }
.partner-stat>span { font-size:13px; line-height:1.6; color:#827366; }
.partner-stat strong { font-size:58px; font-weight:500; line-height:1.2; margin:17px 0 22px; letter-spacing:-2px; }
.partner-terms { font-size:13px; color:#8a827b; line-height:1.7; margin-top:24px; }
@media(max-width:760px) {
 .growth-scene { margin-top:30px; }
 .join-feed { font-size:13px; --join-row:29px; height:83px; }
 .partner-layout { grid-template-columns:1fr; gap:15px; }
 .partner-link-card,.partner-welcome { padding:24px; }
 .partner-copy-row { flex-direction:column; }.partner-copy-row button { align-self:flex-start; }
 .partner-stat { padding:24px; }.partner-stat strong { font-size:44px; margin:10px 0 15px; }
}
@media(max-width:600px) {
 .join-feed { position:relative; left:auto; top:auto; width:100%; padding-left:8%; margin:0 0 2px; font-size:12px; --join-row:27px; height:77px; }
 .join-log { transform:rotateY(16deg) rotateX(6deg) rotateZ(-2deg); }
}

.intro { padding:0; }
.intro-stage { width:min(1480px,100%); margin-inline:auto; padding:42px 24px 0; }
.intro-copy { text-align:center; }
.intro-copy h1 { font-size:clamp(42px,4.2vw,64px); font-weight:600; letter-spacing:-2.1px; line-height:1.08; margin:0; }
.intro-copy h1>span { color:#b6502d; }
.intro-copy p { max-width:860px; color:#6e6e73; font-size:22px; font-weight:400; line-height:1.45; letter-spacing:-.4px; margin:17px auto 0; }
.intro-actions { display:flex; justify-content:center; align-items:center; gap:14px; flex-wrap:wrap; margin-top:23px; }
.intro-button { display:inline-flex; align-items:center; justify-content:center; width:auto; flex:0 0 auto; min-height:44px; padding:10px 22px; border:1px solid transparent; border-radius:10px; font-size:17px; font-weight:400; line-height:1.35; letter-spacing:-.15px; white-space:nowrap; transition:background .15s,color .15s; }
.intro-primary { background:#b6502d; border-color:#b6502d; color:#fff; }
.intro-primary:hover { background:#a54425; border-color:#a54425; }
.intro-secondary { background:transparent; border-color:#b6502d; color:#a44325; }
.intro-secondary:hover { background:#b6502d; color:#fff; }
@media(min-width:761px) and (max-width:960px) {
 .header-inner.wrapper { gap:24px; }
 .site-header nav { gap:20px; }
 .site-header nav a[data-route="partners"] { display:none; }
}
@media(max-width:760px) {
 body { padding-top:52px; }
 .site-header { height:52px; }
 .header-inner.wrapper { width:calc(100% - 32px); gap:16px; }
 .brand-name { font-size:16px; }
 .site-header nav { display:none; }
 .header-auth { gap:15px; }
 .site-header .header-auth .button.small { font-size:12px; min-height:36px; }
 #account-button { max-width:160px; }
 .intro-stage { padding:37px 18px 0; }
 .intro-copy h1 { font-size:clamp(36px,6.5vw,48px); letter-spacing:-1.3px; line-height:1.1; max-width:540px; margin-inline:auto; }
 .intro-copy p { max-width:440px; margin-top:15px; font-size:19px; letter-spacing:-.3px; }
 .intro-actions { margin-top:22px; gap:12px; }
 .intro-button { padding:10px 19px; font-size:16px; }

}
@media(max-width:480px) {
 .header-inner.wrapper { gap:10px; }
 .brand-name { max-width:140px; font-size:15px; white-space:normal; line-height:1.45; }
 .header-auth { gap:12px; }
 #account-button { max-width:145px; }
 .site-header .header-auth .button.small { font-size:11px; }
 .intro-copy h1 { font-size:37px; }
 .intro-copy p { font-size:17px; max-width:345px; }
 .intro-button { padding-inline:18px; font-size:15px; }

}
@supports not (backdrop-filter:blur(20px)) { .site-header { background:rgba(245,245,247,.96); } }
@media(prefers-reduced-motion:reduce) { .intro-button { transition:none; }.join-log p { animation:none; opacity:0; transform:none; }.join-log p:nth-child(-n+3) { opacity:.85; } }

.button { border-radius:7px; font-size:13px; font-weight:500; min-height:44px; padding:12px 20px; gap:9px; }
.button.small { font-size:12px; min-height:40px; padding:10px 17px; }
.outline { color:#333; background:#fff; border:1px solid #dedede; }
.outline:hover { border-color:#b5b5b5; }
.violet { background:var(--orange); color:#fff; }
.violet:hover { background:#a74b29; }
.light { background:#f3e9e3; color:#945033; }
.dark { background:#242424; color:white; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:2px solid var(--orange); outline-offset:3px; }
.marketplace { padding-bottom:70px; }
.route-heading { padding:31px 0 28px; }
.route-heading>a { display:inline-block; color:#777; font-size:12px; margin-bottom:27px; }
.route-heading h1 { font-size:36px; letter-spacing:-1.1px; line-height:1.2; font-weight:600; margin:0; }
.directory-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:24px; border-bottom:1px solid var(--line); flex-wrap:wrap; }
.category-filters { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.category-filters button { border:1px solid #ddd; background:#fff; border-radius:7px; padding:12px 16px; font-size:12px; color:#555; }
.category-filters button.selected { background:#f6e8df; border-color:#c87654; color:#a64e2d; }
.category-filters button:hover { border-color:#bd795c; }
.directory-search { display:flex; align-items:center; gap:10px; margin:0; width:240px; border:1px solid #dedede; border-radius:7px; background:#fff; padding:11px 12px; }
.directory-search svg { width:17px; height:17px; flex-shrink:0; stroke:#888; stroke-width:1.6; fill:none; }
.directory-search input { border:0; background:none; width:100%; min-width:0; outline:0; font-size:12px; color:#333; }
.directory-search:focus-within { outline:2px solid var(--orange); outline-offset:2px; }
.directory-search input:focus-visible { outline:0; }
.directory-status { color:#777; font-size:12px; padding:23px 0; }
.expert-grid,.card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.expert-card { border:1px solid #e0e0e0; background:#fff; border-radius:10px; padding:24px; display:flex; flex-direction:column; }
.expert-card header { display:flex; align-items:center; gap:13px; margin-bottom:18px; }
.expert-card .avatar { margin:0; background:#f0e5dd; color:#9b583c; flex-shrink:0; border-radius:10px; }
.expert-card h3 { font-size:17px; font-weight:600; letter-spacing:-.3px; margin:0 0 4px; }
.expert-specialty { font-size:12px; color:#666; line-height:1.5; }
.category-tags { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
.category-tags span { background:#f4f2ef; border-radius:4px; padding:5px 8px; color:#7b6658; font-size:10px; }
.expert-card p { font-size:13px; line-height:1.7; color:#777; margin:0 0 22px; overflow-wrap:anywhere; }
.expert-card .card-footer { margin-top:auto; gap:12px; }
.expert-card .card-footer strong { font-size:12px; color:#555; font-weight:500; }
.empty-directory { grid-column:1/-1; border:1px solid #e5e5e5; background:#fff; border-radius:10px; padding:62px 24px; text-align:center; }
.empty-directory p { color:#666; font-size:14px; margin:0 0 20px; }
.empty-directory p:only-child { margin:0; }
.empty-directory .button { font-size:12px; }
#join-panel { max-width:620px; padding:4px 0; }
#join-panel p { font-size:14px; line-height:1.8; color:#666; margin:0 0 25px; }
.product-card { border:1px solid #e0e0e0; background:#fff; border-radius:10px; overflow:hidden; }
.product-visual { height:175px; background:#f0e8df; display:grid; place-items:center; color:#b77754; font-size:44px; }
.product-card .card-body { padding:22px; }
.product-card h3 { font-size:17px; letter-spacing:-.3px; margin:10px 0; }
.product-card p { font-size:12px; color:#777; line-height:1.7; }
.product-card .card-footer { gap:12px; }
.product-card .category-tags { margin:0; }
.text-button,.card-open { color:#a65734; }
.dialog-panel { background:#fff; border-radius:12px; padding:30px; }
.dialog-heading h2 { font-size:24px; line-height:1.25; font-weight:600; letter-spacing:-.6px; }
.close-button { background:#f1f1f1; color:#777; }
.form-grid { gap:18px; }
.form-grid label { color:#555; font-size:12px; font-weight:500; }
.form-grid input,.form-grid textarea,.form-grid select,.chat-form input { background:#fff; border:1px solid #ddd; border-radius:6px; color:#333; padding:12px; font-size:13px; width:100%; line-height:1.6; }
.form-grid input::placeholder,.form-grid textarea::placeholder { color:#aaa; }
.form-grid .checkbox input { width:15px; height:15px; accent-color:var(--orange); }
.profile-categories { border:0; padding:0; margin:0; }
.profile-categories legend { color:#555; font-size:12px; font-weight:500; margin-bottom:10px; }
.profile-categories label { display:inline-flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid #ddd; border-radius:6px; margin:0 6px 7px 0; font-size:11px; }
.profile-categories input { width:14px; height:14px; padding:0; margin:0; accent-color:var(--orange); }
.profile-categories label:has(:checked) { background:#fff3eb; border-color:#c67754; }
.form-description { color:#777; font-size:13px; line-height:1.7; }
.form-description b { color:#444; }
.info-box { color:#795d4a; background:#f6eee7; border-radius:7px; font-size:12px; }
.summary { background:#fafafa; border-color:#e3e3e3; border-radius:8px; }
.summary p { color:#555; }
.summary-row { color:#777; border-color:#e6e6e6; }
.summary-row strong { color:#444; font-weight:500; }
.picker button { color:#555; background:#fff; border-color:#ddd; border-radius:7px; }
.picker strong { color:#333; }
.avatar { background:#f0e5dd; color:#9b583c; }
.dashboard-tabs button { color:#555; border-color:#ddd; }
.order-list>button { color:#777; background:#fafafa; border-color:#ddd; }
.order-list b { color:#333; }
.message { color:#665447; background:#f4ebe4; }
.message.mine { color:#555; background:#efefef; }
.chat { border-color:#e4e4e4; }
.status { color:#71604f; background:#f1e8de; }
.auth-switch .text-button { display:inline; margin-left:4px; }
.toast { background:#282828; color:#fff; }
h1,h2,.expert-card h3,.product-card h3,.account-stat strong { font-family:inherit; }
.route-heading h1 { font-size:32px; letter-spacing:-1px; }
.dialog-heading h2 { font-size:20px; letter-spacing:-.6px; line-height:1.4; }
.expert-card h3,.product-card h3 { font-size:15px; line-height:1.5; letter-spacing:-.4px; }
.application-status { border:1px solid #e7d9cb; background:#fffaf5; padding:22px; border-radius:9px; margin-bottom:23px; }
.application-status h3 { font-size:16px; margin:0 0 12px; font-weight:600; }
.application-status p { font-size:13px; color:#72675f; line-height:1.7; margin:0 0 15px; white-space:pre-wrap; }
.application-status .button { margin-top:5px; }
.profile-portfolio { display:inline-block; margin:0 0 15px; color:#a65734; font-size:13px; }

@media(max-width:760px) { .route-heading h1 { font-size:26px; }.dialog-heading h2 { font-size:18px; }.account-stats .account-stat strong { font-size:23px; } }
.account-layout { display:grid; grid-template-columns:290px minmax(0,1fr); gap:26px; }
.account-info { border:1px solid var(--line); border-radius:10px; padding:25px; align-self:start; }
.account-info .avatar { width:56px; height:56px; font-size:23px; margin-bottom:18px; }
.account-info h2 { font-size:20px; letter-spacing:-.5px; margin:0 0 24px; overflow-wrap:anywhere; }
.account-info dl { margin:0 0 25px; }
.account-info dt { color:#888; font-size:11px; margin-bottom:7px; }
.account-info dd { font-size:13px; color:#444; margin:0 0 22px; line-height:1.6; overflow-wrap:anywhere; }
.account-main { min-width:0; }
.account-tabs { display:flex; gap:10px; margin-bottom:24px; }
.account-tabs button { flex:1; padding:15px 12px; font-size:12px; border:1px solid #ddd; border-radius:7px; color:#666; background:#fff; }
.account-tabs button[aria-pressed="true"] { color:#a24d2d; border-color:#c77855; background:#fcf1e9; }
.account-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:25px; }
.account-stat { background:#fafafa; border:1px solid var(--line); border-radius:8px; padding:20px 16px; }
.account-stat strong { display:block; font-size:28px; font-weight:600; margin-bottom:8px; }
.account-stat span { font-size:11px; color:#888; }
.account-main h2 { font-size:19px; font-weight:600; letter-spacing:-.4px; margin:30px 0 18px; }
.account-annotation { border:1px solid var(--line); border-radius:8px; padding:21px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.account-annotation p { font-size:13px; color:#666; margin:0; }
.account-annotation small { display:block; color:#999; font-size:11px; margin-top:7px; }
.account-orders .order-list { margin-bottom:20px; }
.account-access { border:1px solid var(--line); border-radius:9px; padding:30px; }
.account-access p { font-size:14px; color:#777; margin:0 0 20px; }
.account-access .button { margin-right:8px; }
@media(max-width:1050px) { .account-layout { grid-template-columns:250px minmax(0,1fr); gap:20px; }.account-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .account-layout { grid-template-columns:1fr; }.account-info { padding:21px; }.account-info dl { display:grid; grid-template-columns:1fr 1fr; gap:15px; }.account-info dt { grid-row:1; }.account-info dd { margin:0; }.account-tabs { gap:8px; }.account-tabs button { padding:13px 10px; font-size:11px; }.account-annotation { flex-wrap:wrap; }.account-stats { gap:10px; }.account-stat { padding:17px; }.account-stat strong { font-size:25px; }.account-access { padding:23px; } }
@media(max-width:1050px) { .expert-grid,.card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.directory-search { flex:1; min-width:220px; max-width:350px; } }
@media(max-width:760px) {
 .wrapper { width:calc(100% - 36px); }.route-heading { padding:24px 0; }.route-heading>a { margin-bottom:22px; font-size:11px; }.route-heading h1 { font-size:29px; letter-spacing:-.7px; }.directory-toolbar { gap:15px; padding-bottom:20px; }.category-filters { gap:7px; }.category-filters button { font-size:10px; padding:10px 11px; }.directory-search { max-width:none; width:100%; flex:none; }.directory-status { font-size:11px; padding:20px 0; }.expert-grid,.card-grid { grid-template-columns:1fr; gap:14px; }.expert-card { padding:21px; }.empty-directory { padding:40px 18px; }.empty-directory p { font-size:12px; }.dialog-panel { border-radius:15px 15px 0 0; padding:23px 19px max(28px,env(safe-area-inset-bottom)); }.dialog-heading h2 { font-size:21px; }.profile-categories label { display:flex; margin-right:0; }.marketplace { padding-bottom:40px; }
}

@media(max-width:760px) { .route-heading h1 { font-size:26px; line-height:1.4; }.dialog-heading h2 { font-size:18px; } }

/* Bespoke Minecraft workshop: one illustration, real history, open typography. */
body { display:flex; flex-direction:column; min-height:100vh; }
.intro,.marketplace { flex:1 0 auto; }
.home-story { margin-top:46px; }
.workshop { overflow:hidden; color:#f4f4f0; background:#1c1d1b; }
.workshop-wrap { width:min(1200px,calc(100% - 64px)); margin-inline:auto; padding:64px 0 52px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); column-gap:20px; }
.workshop-copy { position:relative; z-index:1; align-self:center; padding-top:14px; }
.workshop-label { margin:0 0 24px; color:#999d93; font-size:13px; line-height:1.5; }
.workshop-copy h2 { margin:0; font-size:clamp(46px,5.5vw,74px); font-weight:550; line-height:1.02; letter-spacing:-3px; }
.workshop-copy h2 span { color:#de8058; }
.workshop-lead { max-width:420px; margin:26px 0 0; color:#b3b6ac; font-size:18px; line-height:1.7; letter-spacing:-.2px; }
.workshop-links { display:flex; flex-wrap:wrap; gap:22px; margin-top:25px; }
.workshop-links a { color:#ebc5b4; font-size:14px; line-height:1.6; text-decoration:underline; text-underline-offset:6px; text-decoration-color:#70594b; }
.workshop-links a+a { color:#d2d5cc; text-decoration-color:#63675d; }
.workshop-links a:hover { color:#fff; text-decoration-color:currentColor; }
.workshop-art { grid-column:2; grid-row:1 / 3; align-self:center; width:128%; max-width:none; margin:0 0 0 -10%; pointer-events:none; }
.workshop-art img { display:block; width:100%; height:auto; }
.workshop-proof { position:relative; z-index:1; display:flex; align-items:flex-end; gap:22px; margin-top:60px; }
.workshop-count { margin:0; font-size:clamp(72px,8vw,108px); font-weight:550; letter-spacing:-5px; line-height:.88; font-variant-numeric:lining-nums; }
.workshop-count>span { color:#de8058; font-size:.62em; vertical-align:10px; margin-right:5px; }
.proof-caption { margin:0 0 2px; font-size:15px; line-height:1.6; color:#e0e3da; }
.proof-caption>span { display:block; margin-top:9px; color:#91968b; font-size:12px; }
.workshop-notes { width:min(1200px,calc(100% - 64px)); margin-inline:auto; padding:0 0 58px; display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.workshop-notes p { max-width:460px; margin:0; color:#92998b; font-size:15px; line-height:1.75; }
.workshop-notes p>span { display:block; color:#dde2d6; font-weight:500; font-size:18px; margin-bottom:7px; letter-spacing:-.3px; }
.home-reviews { background:#fff; }
.review-layout { width:min(1200px,calc(100% - 64px)); margin-inline:auto; padding:92px 0 96px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:20px; }
.review-layout>h2 { margin:3px 0 0; font-size:22px; font-weight:450; letter-spacing:-.4px; }
.review-waiting h3 { margin:0; font-size:clamp(32px,3.3vw,46px); font-weight:500; line-height:1.15; letter-spacing:-1.6px; }
.review-waiting p { margin:23px 0 0; font-size:16px; line-height:1.7; color:#81817c; }
.review-waiting a { display:inline-block; margin-top:21px; color:#a34d2e; font-size:14px; text-decoration:underline; text-underline-offset:6px; text-decoration-color:#dfc0b0; }
.review-waiting a:hover { text-decoration-color:currentColor; }
.public-footer { width:100%; margin-top:auto; color:#d8dbd2; background:#232420; }
.footer-main { width:min(1200px,calc(100% - 64px)); margin-inline:auto; padding:58px 0 50px; display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr) minmax(0,.85fr); gap:40px; }
.footer-brand { display:inline-block; color:#f3f4ef; font-size:25px; line-height:1.35; }
.footer-identity p { margin:20px 0 0; color:#7f8877; font-size:17px; line-height:1.55; letter-spacing:-.2px; }
.footer-nav { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.footer-nav h2 { margin:2px 0 8px; color:#747d6c; font-size:12px; font-weight:400; line-height:1.5; }
.footer-nav a { color:#d1d7c9; font-size:14px; line-height:1.5; }
.footer-nav a:hover { color:#edbda5; }
.footer-bottom { width:min(1200px,calc(100% - 64px)); margin-inline:auto; padding:0 0 28px; display:flex; align-items:center; gap:30px; color:#737c6a; font-size:11px; line-height:1.6; }
.footer-bottom small { font-size:inherit; }
.footer-bottom a { color:#a6b09c; margin-left:auto; }
@media(max-width:950px) {
 .workshop-copy h2 { font-size:54px; letter-spacing:-2px; }
 .workshop-lead { font-size:16px; }
 .workshop-wrap { grid-template-columns:1fr 1fr; }
 .workshop-art { width:145%; margin-left:-8%; }
 .workshop-proof { flex-wrap:wrap; gap:18px; }
 .proof-caption { font-size:13px; }
 .workshop-notes { gap:38px; }
 .footer-brand { font-size:21px; }
 .footer-main { grid-template-columns:1.3fr 1fr 1fr; gap:25px; }
}
@media(max-width:760px) {
 .home-story { margin-top:30px; }
 .workshop-wrap,.workshop-notes,.review-layout,.footer-main,.footer-bottom { width:calc(100% - 36px); }
 .workshop-wrap { grid-template-columns:1fr; padding-top:44px; padding-bottom:36px; }
 .workshop-copy { padding-top:0; }
 .workshop-label { margin-bottom:20px; }
 .workshop-copy h2 { font-size:clamp(44px,10vw,60px); letter-spacing:-2px; }
 .workshop-lead { max-width:420px; margin-top:23px; font-size:16px; }
 .workshop-art { grid-column:1; grid-row:2; width:min(116%,680px); margin:13px 0 0; justify-self:center; }
 .workshop-proof { grid-row:3; margin-top:6px; gap:20px; align-items:flex-end; }
 .workshop-count { font-size:80px; letter-spacing:-4px; }
 .workshop-count>span { vertical-align:7px; }
 .proof-caption { font-size:13px; }
 .proof-caption>span { margin-top:5px; font-size:11px; }
 .workshop-notes { grid-template-columns:1fr; gap:26px; padding-bottom:42px; }
 .workshop-notes p { font-size:14px; max-width:420px; }
 .workshop-notes p>span { font-size:17px; }
 .review-layout { grid-template-columns:1fr; gap:28px; padding:46px 0 52px; }
 .review-layout>h2 { font-size:18px; }
 .review-waiting h3 { font-size:34px; letter-spacing:-1.1px; }
 .review-waiting p { font-size:15px; margin-top:20px; }
 .footer-main { grid-template-columns:1fr 1fr; gap:34px 22px; padding:40px 0 36px; }
 .footer-identity { grid-column:1 / -1; }
 .footer-brand { font-size:24px; }
 .footer-identity p { font-size:15px; margin-top:15px; }
 .footer-nav { gap:12px; }
 .footer-nav a { font-size:13px; }
 .footer-bottom { flex-wrap:wrap; gap:13px 20px; padding-bottom:24px; }
 .footer-bottom>a { margin-left:auto; }
}

