/* LandAi: a small publication, with rooms rather than an endless pitch. */
.mascot-visit{display:block;width:65px;height:72px;margin:0 0 12px;overflow:hidden;pointer-events:none}
.mascot-visit img{display:block;width:65px;height:auto;clip-path:polygon(0 0,100% 0,100% 76%,70% 76%,70% 100%,0 100%);transform-origin:50% 90%;animation:landai-mascot-visit 24s ease-in-out infinite;animation-play-state:paused}
.mascot-visit[data-mascot-active=true] img{animation-play-state:running}
.idea-gallery .mascot-visit{float:right;margin:0 10px 15px 20px}
.tech-story .mascot-visit{float:right;margin:0 10px 10px 20px}
@keyframes landai-mascot-visit{0%,10%,88%,100%{transform:translateY(82px) rotate(-6deg)}18%,24%,70%{transform:translateY(0) rotate(0)}32%,55%{transform:translateY(0) rotate(5deg)}42%,64%{transform:translateY(0) rotate(-4deg)}}
@media(prefers-reduced-motion:reduce){.mascot-visit img{animation:none;transform:none}}
.workshop-edition{--paper:#f7f4eb;--ink:#253c2d;--rust:#994b31;background:var(--paper);color:var(--ink)}
.workshop-edition a:focus-visible{outline:3px solid var(--rust);outline-offset:5px}
.workshop-edition .landai-header{background:var(--paper)}
.workshop-edition .site-header{border-top:1px solid #253c2d40;border-bottom:1px solid #253c2d40;gap:12px;flex-wrap:wrap;padding:10px 0}
.workshop-edition .workshop-nav{display:flex;gap:8px 25px;align-items:center;flex-wrap:wrap;justify-content:flex-start;font-size:13px;min-height:44px}
.workshop-nav a{color:inherit;text-decoration:none;padding:12px 0;white-space:nowrap}
.workshop-nav a:hover,.workshop-nav a[aria-current=page]{color:var(--rust);text-decoration:underline;text-underline-offset:7px}
.workshop-edition .header-controls{margin-left:auto}
.workshop-edition .hero{padding-top:35px;padding-bottom:42px}
.workshop-edition .hero-copy h2{font-size:clamp(38px,4.5vw,63px);font-weight:650;letter-spacing:-2px}
.workshop-edition .photo-hero{height:270px}
.workshop-edition .lake-photo,.workshop-edition .blossom-photo{transform:none;border-radius:0;box-shadow:none}
.workshop-directory{padding:30px 0 50px;border-top:1px solid #253c2d60;display:grid;grid-template-columns:1fr 2fr;gap:55px}
.directory-heading h2{font-size:clamp(25px,3vw,40px);line-height:1.15;font-weight:550;letter-spacing:-1px;max-width:260px;margin:15px 0}
.directory-rows>a{display:grid;grid-template-columns:140px 1fr 25px;align-items:center;gap:15px;border-bottom:1px solid #253c2d33;padding:24px 0;color:inherit;text-decoration:none}
.directory-rows>a:first-child{padding-top:0}
.directory-index{font-size:10px;letter-spacing:1px;color:#686b5a}
.directory-rows strong{display:block;font-size:25px;font-weight:550;line-height:1.3}
.directory-rows small{display:block;font-size:13px;line-height:1.6;margin-top:6px;color:#5b6255}
.directory-rows>a:hover strong{color:var(--rust);text-decoration:underline;text-underline-offset:5px}
.workshop-about{border-top:1px solid #253c2d40;padding:30px 0 35px}
.workshop-edition .workshop-about .landai-purpose{width:100%;padding:0;margin:15px 0 0;max-width:none;background:none;border:0}
.workshop-masthead{display:flex;justify-content:space-between;align-items:center;padding:30px 0 25px}
.workshop-brand{font-family:Georgia,serif;font-size:43px;color:var(--ink);text-decoration:none;font-weight:bold;line-height:1}
.workshop-brand span{display:block;font-family:inherit;font-weight:normal;font-size:15px;margin-top:10px}
.workshop-masthead>p{font-size:12px;line-height:1.7;color:#666954;text-align:right}
.category-page> .workshop-nav{max-width:1240px;width:calc(100% - 80px);margin:0 auto;border-top:1px solid #253c2d40;border-bottom:1px solid #253c2d40}
.page-intro{padding:50px 0 35px}
.page-intro h1{font-family:Georgia,serif;font-size:clamp(36px,5vw,68px);font-weight:normal;letter-spacing:-2px;line-height:1.08;margin:15px 0 20px}
.page-intro>p:last-child{max-width:720px;line-height:1.8;font-size:17px;color:#57604f}
.category-page .free-tools{padding:25px 0 55px;display:block}
.category-page .free-tools-intro{max-width:700px;margin-bottom:35px}
.category-page .tool-shelf{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
.category-page .tool-shelf li{border-radius:0;background:transparent;padding:25px 0;border:0;border-top:1px solid #253c2d50}
.category-page .project-hub{padding-bottom:45px}
.category-page .project-link{border-radius:0;box-shadow:none;background:transparent;border:0;border-top:1px solid #253c2d50;padding:25px 0}
.category-page .featured-projects{gap:55px}
.category-page .regional-picks{margin-top:10px}
.region-photo{padding:20px 0 50px}
.region-photo img{display:block;width:100%;max-height:430px;object-fit:cover}
.region-photo figcaption{font-size:12px;color:#686b5a;margin-top:12px}
.next-page{border-top:1px solid #253c2d40;padding:25px 0 45px}
.next-page a{font-size:20px;color:var(--rust)}
.workshop-edition .compact-health{display:block;margin:0 auto 50px;width:calc(100% - 80px);max-width:1240px;border:0;padding:0}
.workshop-edition .compact-health>summary{font-size:15px;letter-spacing:.5px;padding:15px 0;border-top:1px solid #253c2d50;border-bottom:1px solid #253c2d50}
.workshop-edition .live-status{position:static;width:auto;max-width:none;min-width:0;border:0;background:transparent;box-shadow:none;padding:25px 0;right:auto;color:var(--ink)}
.workshop-edition .tech-story{max-width:900px}
.workshop-edition .tech-story h3{font-family:Georgia,serif;font-size:31px;font-weight:normal}
.workshop-edition .tech-story p{font-size:15px;line-height:1.8}
.workshop-edition .tech-now{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.workshop-edition .server-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.workshop-edition .server-reading{border:1px solid #253c2d40;border-radius:0;background:#fffcf4;padding:22px;min-width:0}
.workshop-edition .server-reading h3{font-family:Georgia,serif;font-size:29px;margin:0 0 5px}
.workshop-edition .server-reading dl{font-size:14px}
.workshop-edition .server-reading dl>div{display:block;border-bottom:1px solid #253c2d25;padding:12px 0}
.workshop-edition .server-reading dt{font-size:11px;letter-spacing:1px;text-transform:uppercase}
.workshop-edition .server-reading dd{margin:5px 0 0;font-size:19px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.workshop-edition .server-reading meter{display:block;width:100%;height:12px;margin:8px 0;accent-color:#426a45}
.workshop-edition .server-reading meter[hidden]{display:none}
.workshop-edition .tech-measurements>summary{padding:18px 0}
.workshop-edition .live-status-note{max-width:900px;font-size:13px;line-height:1.8}
.workshop-edition .live-status-label{font-size:14px;color:#355e3a}
.workshop-edition .web-reachability{margin-top:20px}
.workshop-footer{border-top:1px solid #253c2d70;padding:30px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:12px;line-height:1.8}
.workshop-footer p{margin:8px 0;color:#626554}
.workshop-footer a{color:inherit;text-underline-offset:3px}
.workshop-footer .demo-conditions{grid-column:1/-1;max-width:850px}
.workshop-footer .ap-signoff{grid-column:1/-1}
@media(max-width:900px){.workshop-directory{grid-template-columns:1fr;gap:20px}.directory-heading h2{max-width:none}.workshop-edition .server-readings{grid-template-columns:1fr}.workshop-edition .header-controls{margin-left:0}.category-page>.workshop-nav,.workshop-edition .compact-health{width:calc(100% - 40px)}}
@media(max-width:600px){.workshop-edition .workshop-nav{gap:0 20px;font-size:12px;justify-content:flex-start}.workshop-edition .site-header nav{width:100%;gap:0 20px}.workshop-edition .hero{padding-top:25px;padding-bottom:15px}.workshop-edition .photo-hero{height:220px}.directory-rows>a{grid-template-columns:1fr 20px;gap:5px;padding:20px 0}.directory-index{grid-column:1/-1}.directory-rows strong{font-size:23px}.workshop-directory{padding-bottom:30px}.workshop-masthead{padding:25px 0}.page-intro{padding-top:32px}.category-page .tool-shelf,.workshop-edition .tech-now,.workshop-footer{grid-template-columns:1fr}.category-page .featured-projects{gap:25px}.workshop-footer .demo-conditions,.workshop-footer .ap-signoff{grid-column:auto}.workshop-edition .live-status{padding:20px 0}.workshop-edition .server-reading{padding:20px}.workshop-edition .live-status-actions{flex-wrap:wrap}}

.workshop-edition .compact-health[open]{width:calc(100% - 80px);max-width:1240px;margin:0 auto 50px;font:15px/1.7 "Segoe UI",Arial,sans-serif;text-align:left}
.workshop-edition .compact-health .tech-story{margin-top:35px;border-top:1px solid #253c2d40;padding-top:25px}
@media(max-width:900px){.workshop-edition .compact-health[open]{width:calc(100% - 40px)}}

/* Lead with ownership and a concrete first step. */
.workshop-edition .hero-copy h2{font-size:clamp(38px,4.4vw,62px);line-height:1.06;margin:18px 0 22px}
.workshop-edition .hero-description{font-size:16px;line-height:1.75;margin:0 0 16px;max-width:540px}
.workshop-edition .photo-hero{height:330px;align-self:center}
.start-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:24px;font-size:14px}
.start-actions .start-primary{display:inline-block;background:var(--ink);color:var(--paper);padding:13px 18px;text-decoration:none;border:1px solid var(--ink)}
.start-actions .start-primary:hover{background:var(--rust)}
.start-note{font-size:12px;line-height:1.7;color:#5b6255;max-width:420px;margin:14px 0 0}
.data-purpose{padding:35px 0 40px;border-top:1px solid #253c2d50}
.data-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;align-items:start}
.data-heading .eyebrow{grid-column:1/-1}
.data-heading h2{font-family:Georgia,serif;font-weight:normal;font-size:clamp(30px,3.5vw,44px);line-height:1.15}
.data-heading>p:last-child{max-width:530px;margin:0;font-size:16px;line-height:1.8}
.data-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:20px}
.data-examples article{border-top:1px solid #253c2d40;padding:22px 0 10px}
.data-examples h3{font-family:Georgia,serif;font-size:26px;font-weight:normal;line-height:1.2;margin:13px 0}
.data-examples p{font-size:14px;line-height:1.8;margin:0 0 16px}
.data-examples a{font-size:13px;color:var(--rust)}
.data-responsibility{font-size:13px;line-height:1.8;max-width:850px;margin:22px 0 0;color:#5b6255}
.first-step{border-block:1px solid #253c2d50;margin:30px 0 40px;padding:28px 0;max-width:900px}
.first-step h2{font-family:Georgia,serif;font-size:clamp(29px,3.5vw,40px);font-weight:normal;line-height:1.2}
.first-step p,.first-step li{font-size:16px;line-height:1.8}
.first-step ol{padding-left:23px}.first-step li{padding:5px 0 12px 8px}
.hardware-heading{font-family:Georgia,serif;font-weight:normal;font-size:32px}
@media(max-width:760px){.data-heading,.data-examples{grid-template-columns:1fr;gap:15px}.data-heading .eyebrow{grid-column:auto;margin-bottom:0}.data-heading h2{margin:8px 0}.data-examples{margin-top:25px}.data-examples article{padding-bottom:15px}.workshop-edition .photo-hero{height:230px}.data-purpose{padding-top:25px}.start-actions{gap:15px}.first-step li{padding-left:0}}

/* Practical beginner guide: plain instructions, no product offer. */
.guide-invitation{max-width:900px}.guide-invitation .guide-link{display:inline-block;background:var(--ink);color:var(--paper);padding:14px 20px;text-decoration:none;font-size:16px;margin:8px 0}
.hardware-story{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;margin:20px 0 45px}
.hardware-story h2{font-family:Georgia,serif;font-size:clamp(30px,3.5vw,43px);font-weight:normal;line-height:1.15}
.hardware-story p{font-size:16px;line-height:1.8}.hardware-story figure{margin:0}.hardware-story img,.tech-hardware-photo img{display:block;width:100%;height:auto;border:1px solid #253c2d40}
.hardware-story figcaption,.tech-hardware-photo figcaption{font-size:12px;line-height:1.7;color:#626554;margin-top:12px}
.tech-hardware-photo{max-width:650px;margin:25px 0 15px}
.beginner-guide .guide-intro h1{font-size:clamp(38px,5vw,64px);max-width:1000px;letter-spacing:-1.8px}
.guide-kit{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:28px 0;border-block:1px solid #253c2d50;margin:0 0 35px}
.guide-kit h2{font-family:Georgia,serif;font-size:31px;font-weight:normal}.guide-kit p,.guide-kit li{font-size:15px;line-height:1.8}.guide-kit ul{padding-left:20px}.guide-kit li{padding:0 0 10px 5px}
.guide-note{font-size:13px!important;line-height:1.8;color:#626554;border-left:3px solid #994b3160;padding-left:17px}
.guide-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:65px;margin:30px 0 55px}
.guide-contents{position:sticky;top:24px;align-self:start}.guide-contents ol{padding-left:22px;margin-bottom:25px}.guide-contents li{padding:8px 0;font-size:14px;line-height:1.5}.guide-contents>a{font-size:13px}
.guide-step{padding:30px 0;border-top:1px solid #253c2d40;scroll-margin-top:25px}.guide-step:first-child{padding-top:0;border-top:0}
.guide-step h2,.guide-extra h2{font-family:Georgia,serif;font-size:clamp(28px,3.4vw,39px);font-weight:normal;line-height:1.15;margin:12px 0 20px;letter-spacing:-.6px}
.guide-step p,.guide-extra p{font-size:16px;line-height:1.9;max-width:780px}.guide-step .eyebrow{font-size:11px;line-height:1.5;letter-spacing:1.4px}
.guide-steps code{background:#e8e9dd;padding:2px 5px;font-size:.93em;overflow-wrap:anywhere;white-space:normal}
.guide-step .step-result{border-left:3px solid #637850;padding:12px 18px;background:#e9eddf;font-size:14px;line-height:1.7;margin:22px 0 12px}
.guide-source{font-size:12px;color:var(--rust)}
.guide-extra{padding:25px 0;border-top:1px solid #253c2d40}.guide-extra details{border-bottom:1px solid #253c2d30;padding:16px 0}.guide-extra summary{font-size:16px;line-height:1.6;cursor:pointer}.guide-extra details a{font-size:13px}.guide-date{margin:25px 0}
@media(max-width:900px){.hardware-story{grid-template-columns:1fr;gap:20px}.hardware-story figure{max-width:650px}.guide-layout{grid-template-columns:1fr;gap:25px}.guide-contents{position:static;border-bottom:1px solid #253c2d40;padding-bottom:25px}.guide-contents ol{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}}
@media(max-width:600px){.guide-kit{grid-template-columns:1fr;gap:15px}.guide-contents ol{grid-template-columns:1fr}.guide-step{padding:25px 0}.guide-step p,.guide-extra p{font-size:15px}.hardware-story{margin-bottom:30px}.hardware-story p{font-size:15px}}
@media print{.beginner-guide header,.beginner-guide>nav,.beginner-guide .skip,.guide-contents,.beginner-guide footer{display:none}.beginner-guide{background:white;color:black}.beginner-guide .wrap{width:100%;max-width:none}.guide-layout,.guide-kit{display:block}.guide-step{break-inside:avoid}.guide-extra details{display:block}.guide-extra details>p{display:block}.guide-step .step-result{background:transparent;border:1px solid #999}.guide-source{color:black}.guide-step p,.guide-extra p,.guide-kit p,.guide-kit li{font-size:11pt}.guide-step h2{font-size:20pt}.beginner-guide .guide-intro h1{font-size:30pt}}
