@font-face{font-family:'Richard Serif';src:url('assets/richard-serif.woff') format('woff');font-display:swap;font-weight:400;font-style:normal}
:root{--stone:#dcd6ca;--ink:#504c43;--muted:#7b7569;--edge:#b9b1a177;--light:#f7f2e795;--serif:'Richard Serif','Times New Roman',Times,serif;--sans:'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--stone) url('assets/stone-texture.webp') repeat;background-size:1100px;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #716a56;outline-offset:5px}::selection{background:#c1bba9}img{max-width:100%;display:block}.page-shell{display:grid;grid-template-columns:17.5% minmax(0,1fr);width:100%;min-height:100vh}.left-sidebar{border-right:1px solid #afa59066;box-shadow:inset -1px 0 #fff7;position:relative}.left-sticky{position:sticky;top:0;min-height:100vh;display:flex;flex-direction:column;padding:clamp(28px,2.8vw,55px) clamp(17px,1.6vw,34px) 28px}.crest-brand{display:flex;align-items:center;gap:clamp(10px,1vw,20px);text-decoration:none}.crest-brand>.brand-crest{width:29%;height:auto;aspect-ratio:1;object-fit:contain;flex:0 0 auto}.brand-type{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.brand-type>span{font:400 clamp(20px,1.4vw,29px)/1.1 var(--serif);letter-spacing:clamp(3px,.4vw,8px)}.brand-type small{font-size:11px;letter-spacing:1.7px;color:#8c8270;white-space:nowrap}.brand-rule{height:1px;width:24px;background:#9c9381;margin:32px auto 40px}.site-nav{display:grid;gap:13px}.site-nav a{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:clamp(14px,1.1vw,21px);padding:12px 10px;border:1px solid transparent;border-radius:5px;line-height:1.25}.site-nav a svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.5;fill:none;flex:0 0 auto}.site-nav a.active,.site-nav a:hover{border-color:#f8f4e8a1;background:#c5bba63b;box-shadow:0 4px 7px #71624814,inset 0 0 0 1px #a99a7e21}.site-nav a:last-child{font-size:clamp(14px,.98vw,20px)}.left-foot{margin-top:auto;padding:65px 12px 5px}.left-foot p{font:italic 19px/1.45 var(--serif);color:#8c806d;margin:0 0 25px}.left-foot>a{font-size:14px}main{min-width:0;padding:0 16px 0 0}.hero-area{display:grid;grid-template-columns:minmax(0,1fr) 24.6%;gap:16px;align-items:start;padding:18px 0 0 15px}.graph-column{min-width:0}.stone-graph{position:relative;isolation:isolate;aspect-ratio:1;overflow:hidden;border:1px solid #afa38b65;box-shadow:inset 1px 1px #fff8;border-radius:5px;background:#dcd6ca}.stone-world-image{display:block;width:100%;height:100%;object-fit:cover}.stone-node{position:absolute;left:var(--x);top:var(--y);width:16%;height:15%;transform:translate(-50%,-45%);display:flex;align-items:center;justify-content:flex-end;flex-direction:column;padding:0;border-radius:8px;z-index:2;line-height:1;outline-offset:1px!important}.stone-node>.node-label{position:absolute;left:50%;top:100%;transform:translateX(-50%);font:400 clamp(16px,1.3vw,27px)/1.15 var(--serif);white-space:nowrap;border-bottom:1px solid transparent;padding:1px 3px;letter-spacing:-.3px;transition:color .2s,border-color .2s}.stone-node:hover>span,.stone-node.selected>span{border-color:#90846b70;color:#433f33}.centre-node{width:19%;height:20%;transform:translate(-50%,-46%)}.centre-node>.node-label{font-size:clamp(24px,1.85vw,38px);letter-spacing:-.7px}.right-sidebar{display:grid;gap:14px;align-self:stretch;align-content:start}.stone-panel{padding:clamp(18px,1.5vw,30px);border:1px solid #f8f4e5a6;border-radius:5px;background:#e9e1d223;box-shadow:inset 0 0 0 1px #b5a78c21}.panel-heading{font-size:16px;border-bottom:1px solid #b8aa9177;margin:-2px 0 22px;padding-bottom:15px}.profile-title{display:flex;align-items:center;gap:12px;margin:0 0 20px}.profile-title>img{width:49px;height:49px;object-fit:contain;flex:0 0 auto}.profile-title h1{font:500 clamp(20px,1.2vw,24px)/1.25 var(--sans);letter-spacing:-.4px;margin:0 0 6px}.profile-title p{font-size:13px;color:#978b74;margin:0;line-height:1.45}.profile-copy>p{font-size:16px;line-height:1.65;color:#7e725e;margin:0 0 22px}.profile-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:23px}.profile-tags span{font-size:12px;padding:4px 8px;background:#c7bba43b;color:#84765e;border-radius:4px}.profile-copy>a{font-size:14px}.links-panel h2{font:500 18px/1.35 var(--sans);margin:0 0 20px}.links-panel h2 span{font-size:15px;color:#9a8b70;font-weight:400}.links-panel ul{list-style:none;padding:0;margin:0}.links-panel li+li{border-top:1px solid #b8a58522}.links-panel a{display:flex;align-items:center;gap:11px;text-decoration:none;padding:10px 0;font-size:16px;line-height:1.3}.links-panel a:hover{text-decoration:underline}.link-symbol{width:20px;flex:0 0 auto;text-align:center;font:400 23px var(--serif);color:#7d7057}.social-symbol{font-family:var(--sans);font-size:16px}.links-panel small{display:block;font-size:12px;color:#9b896a;margin-top:5px}.link-kind{margin-left:auto;font-size:12px;color:#9a896b}.below-hero{padding-left:clamp(30px,3vw,65px);padding-right:clamp(20px,2vw,45px);padding-top:30px}.site-footer{margin-left:clamp(30px,3vw,65px);margin-right:clamp(20px,2vw,45px)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:20;background:#fff;padding:12px}.skip-link:focus{top:12px}
.below-hero{padding-top:34px}.wrap{max-width:1280px;margin:auto;width:100%}.section{padding:73px 0;border-top:1px solid #b7ad9b77}.section-label{display:flex;justify-content:space-between;gap:25px;font-size:12px;color:#8a816f;letter-spacing:1.3px;margin-bottom:42px}.below-hero h2{font:400 clamp(36px,4vw,60px)/1.07 var(--serif);letter-spacing:-2px;margin:0}.below-hero h2 em{font-weight:400}.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:8%}.about-copy p{font-size:16px;line-height:1.7;margin:0 0 20px;color:#79705f}.about-copy p.lead{font-size:22px;line-height:1.5;color:#514e41}.business-links{display:flex;gap:9px;flex-wrap:wrap;padding-top:12px}.pill-link{display:block;font-size:13px;padding:9px 14px;border:1px solid #b2a79178;border-radius:5px;text-decoration:none;box-shadow:inset 0 1px #fff7}.pill-link:hover{background:#efe6d7}.business-timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;padding:28px 0 0;margin:48px 0 0;gap:25px;border-top:1px solid #b7ad9b70}.business-timeline .year{font-size:13px;color:#8b826f}.business-timeline h3{font:400 23px/1.15 var(--serif);margin:17px 0 14px}.business-timeline h3 a{text-decoration:none}.business-timeline p{font-size:15px;line-height:1.6;color:#807563;margin:0}.side-projects{display:grid;grid-template-columns:150px 1fr 1fr;gap:30px;border-top:1px dashed #b7ad9b77;padding-top:25px;margin-top:33px}.side-projects h3{font-size:12px;letter-spacing:1px;font-weight:400;text-transform:uppercase;margin:0;color:#8c816d}.side-projects p{font-size:15px;color:#807563;margin:0;line-height:1.65}.side-projects strong{display:block;font-size:16px;font-weight:400;color:#585443;margin-bottom:7px}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:38px}.section-heading>p{font-size:16px;line-height:1.6;max-width:330px;color:#7c725f;margin:0}.book-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.book{border:1px solid #f8f1e0a6;padding:30px 34px;background:#cfc3ad2d;box-shadow:inset 1px 0 0 #a6997b33,5px 7px 13px #9b8b671a;border-radius:4px}.book-top{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:1px;color:#8b7f66}.book h3{font:400 35px/1.15 var(--serif);letter-spacing:-.7px;margin:29px 0 15px}.book-subtitle{font-size:15px;color:#7c705a;line-height:1.5;min-height:45px}.book-rule{height:1px;background:#b5a68a80;margin:25px 0}.book-description{font-size:16px;color:#7c705a;line-height:1.65;margin-bottom:25px}.book-link{display:flex;justify-content:space-between;font-size:14px;gap:20px}.external-label{font-size:12px;color:#998a6d}.business-list{border-top:1px solid #a6998177}.business-entry{display:grid;grid-template-columns:200px minmax(0,1fr);gap:40px;padding:38px 0;border-bottom:1px solid #b5a68a66;align-items:start}.business-logo{height:135px;padding:24px;display:flex;align-items:center;justify-content:center;background:#f4f0e7;border:1px solid #b4aa9777;border-radius:3px}.business-logo img{max-width:100%;max-height:100%;object-fit:contain;width:auto;height:auto}.business-logo.logo-dark{background:#35362e;border-color:#35362e}.business-logo.logo-robodromo{overflow:hidden}.business-logo.logo-robodromo img{width:100%;max-height:none}.business-heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:18px}.business-heading h3{font:400 32px/1.2 var(--serif);margin:0}.business-category{font-size:11px;letter-spacing:1px;line-height:1.4;max-width:210px;color:#8a7b61;text-align:right}.business-copy p{font-size:16px;line-height:1.7;margin:0 0 15px;color:#7c705a}.business-copy .business-lead{font-size:21px;line-height:1.5;color:#595140}.text-link{font-size:14px;display:inline-block;margin-top:8px}.business-photo{grid-column:2;margin:20px 0 0}.business-photo-frame{aspect-ratio:16/7;overflow:hidden;border-radius:4px}.business-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:sepia(.15)}.business-photo figcaption{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#928368;margin-top:12px}.press-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.press-grid>div:first-child>p{font-size:16px;color:#82755e;max-width:320px;margin-top:25px;line-height:1.65}.press-list>a{display:grid;grid-template-columns:1fr auto;gap:9px 20px;text-decoration:none;border-bottom:1px solid #b5a68a66;padding:19px 0}.press-source{font-size:11px;letter-spacing:1px;color:#95836a;grid-column:1/-1}.press-name{font:400 22px/1.2 var(--serif)}.read-label{font-size:12px;color:#99876a;align-self:center}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.contact-copy>p{font-size:18px;line-height:1.6;color:#827158;max-width:430px;margin:0 0 26px}.contact-primary{display:inline-block;padding:12px 23px;border:1px solid #b7a68b;border-radius:4px;box-shadow:inset 0 1px #fff7,1px 4px 6px #9b896819;text-decoration:none;font-size:16px}.contact-copy .contact-address{font-size:21px;margin:23px 0 10px;overflow-wrap:anywhere}.contact-copy .contact-note{font-size:13px}.contact-secondary{display:flex;gap:25px;font-size:14px}.site-footer{border-top:1px solid #b8aa9177;display:flex;justify-content:space-between;gap:20px;padding:25px 0 30px;font-size:13px;color:#8c7e64}.skip-link{position:fixed;top:-100px;left:20px;z-index:20;background:#fff;padding:12px}.skip-link:focus{top:12px}.motion-paused .connection-art{animation-play-state:paused}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
/* Long-form content remains beneath the complete hero. */
.below-hero{padding-left:clamp(30px,3vw,65px);padding-right:clamp(20px,2vw,45px);padding-top:36px}.below-hero h2{letter-spacing:-1.5px}.business-category,.press-source{font-size:12px}
@media(max-width:1350px){.page-shell{grid-template-columns:18% minmax(0,1fr)}.left-sticky{padding-left:17px;padding-right:17px}.site-nav a{font-size:14px;gap:10px;padding:10px 6px}.site-nav a:last-child{font-size:13px}.site-nav svg{width:20px;height:20px}.brand-type small{font-size:10px;letter-spacing:1px}.brand-rule{margin-bottom:27px}.hero-area{grid-template-columns:minmax(0,1fr) 27%;gap:12px}.profile-title>img{width:39px;height:39px}.profile-title{gap:8px}.profile-title h1{font-size:19px}.profile-title p{font-size:12px}.profile-copy>p{font-size:15px}.stone-panel{padding:17px}.link-kind{display:none}.links-panel a{font-size:14px}.links-panel small{font-size:11px}.links-panel h2{font-size:16px}.below-hero{padding-left:28px;padding-right:20px}.business-timeline{grid-template-columns:repeat(3,1fr)}.business-entry{grid-template-columns:180px minmax(0,1fr);gap:28px}.business-heading{display:block}.business-category{text-align:left;max-width:none;display:block;margin-top:8px}.section-heading>p{max-width:300px}.book h3{font-size:31px}}
@media(max-width:1050px){.page-shell{display:block}.left-sidebar{border-right:0;border-bottom:1px solid #b4a28655}.left-sticky{position:static;min-height:0;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:25px;padding:12px 22px}.crest-brand{gap:10px}.crest-brand>.brand-crest{width:50px}.brand-type{gap:5px}.brand-type>span{font-size:19px;letter-spacing:4px}.brand-type small{font-size:9px}.brand-rule,.left-foot{display:none}.site-nav{display:flex;gap:5px}.site-nav a,.site-nav a:last-child{font-size:13px;padding:9px}.site-nav a svg{display:none}main{padding:0 18px}.hero-area{padding:17px 0 0;grid-template-columns:minmax(0,1fr) 28%;gap:14px}.stone-node>.node-label{font-size:20px}.centre-node>.node-label{font-size:29px}.stone-panel{padding:17px}.profile-copy>p{font-size:15px}.below-hero{padding:30px 10px 0}.site-footer{margin:0 10px}.section{padding:56px 0}.about-grid{gap:5%}.side-projects{grid-template-columns:1fr 1fr}.side-projects h3{grid-column:1/-1}.section-heading{gap:30px}.book{padding:26px}.business-entry{grid-template-columns:170px minmax(0,1fr);gap:25px}.business-logo{height:112px;padding:20px}.press-grid{gap:5%}.press-name{font-size:21px}.read-label{display:none}}
@media(max-width:820px){.hero-area{grid-template-columns:1fr}.right-sidebar{grid-template-columns:1fr 1fr;gap:14px}.profile-copy>p{font-size:16px}.profile-title>img{width:47px;height:47px}.profile-title h1{font-size:21px}.stone-node>.node-label{font-size:24px}.centre-node>.node-label{font-size:35px}.links-panel a{font-size:16px}.links-panel small{font-size:12px}.stone-panel{padding:20px}.about-grid{grid-template-columns:1fr;gap:28px}.about-grid h2 br{display:none}.about-grid h2{max-width:480px}.section-heading{display:block}.section-heading>p{margin-top:22px;max-width:500px}.book-grid{gap:20px}.book h3{font-size:29px}.section-label{font-size:11px;margin-bottom:30px;gap:20px}.section-label>span:last-child{text-align:right}.business-photo{grid-column:1/-1}.contact-grid{gap:6%}.contact-secondary{flex-wrap:wrap;gap:15px}.press-grid{grid-template-columns:1fr}.press-list{margin-top:20px}}
@media(max-width:560px){main{padding:0 13px}.left-sticky{padding:10px 14px 12px;flex-wrap:wrap;justify-content:space-between;gap:13px}.crest-brand>.brand-crest{width:49px}.brand-type>span{font-size:20px}.brand-type small{font-size:10px}.site-nav{width:100%;display:grid;grid-template-columns:.7fr .7fr .7fr 1.35fr;gap:3px}.site-nav a,.site-nav a:last-child{justify-content:center;text-align:center;font-size:12px;padding:8px 4px}.hero-area{padding-top:14px;gap:14px}.stone-node{width:19%;height:16%}.stone-node>.node-label{font-size:16px;letter-spacing:-.4px}.centre-node{width:22%;height:20%}.centre-node>.node-label{font-size:25px;letter-spacing:-.6px}.right-sidebar{grid-template-columns:1fr}.profile-title h1{font-size:24px}.profile-title>img{width:55px;height:55px}.profile-title p{font-size:13px}.profile-copy>p{font-size:16px}.profile-tags span{font-size:13px}.links-panel h2{font-size:18px}.links-panel a{padding:11px 0}.link-kind{display:block;font-size:12px}.below-hero{padding:25px 0 0}.section{padding:44px 0}.section-label{font-size:11px;gap:15px}.section-label>span:last-child{max-width:150px}.below-hero h2{font-size:38px;letter-spacing:-1.5px}.about-copy p.lead{font-size:21px}.business-timeline{grid-template-columns:1fr 1fr;gap:25px 20px;margin-top:30px}.business-timeline h3{font-size:23px}.business-timeline p{font-size:15px}.side-projects{grid-template-columns:1fr;gap:19px}.side-projects h3{grid-column:auto}.side-projects p{font-size:16px}.book-grid{grid-template-columns:1fr}.book{padding:25px}.book h3{font-size:34px}.book-subtitle{min-height:0;font-size:16px}.book-description{font-size:16px}.business-entry{grid-template-columns:1fr;gap:22px;padding:30px 0}.business-logo{width:210px;height:120px;padding:23px}.business-heading h3{font-size:30px}.business-copy .business-lead{font-size:21px}.business-photo{grid-column:auto;margin:0}.business-photo figcaption{display:block;font-size:12px}.business-photo figcaption>a{display:block;margin-top:6px}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-copy>p{font-size:18px}.contact-secondary{font-size:14px}.site-footer{margin:0;font-size:12px;gap:10px;padding:22px 0}.contact-copy .contact-address{font-size:20px}}
@media(max-width:360px){.stone-node>.node-label{font-size:14px}.centre-node>.node-label{font-size:22px}.business-timeline{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Labels are positioned from the inspected artwork, rather than guessed crop boxes. */
.stone-node{top:var(--label-y);height:16%;transform:translate(-50%,-100%);justify-content:flex-end}.stone-node>.node-label{top:auto;bottom:0;line-height:1.1;letter-spacing:0}.centre-node{height:21%;transform:translate(-50%,-100%)}.centre-node>.node-label{letter-spacing:-.35px}

.centre-node{height:31%}
@media(max-width:560px){.stone-node{top:calc(var(--label-y) + 2%)}.centre-node{top:calc(var(--label-y) + 4%);height:33%}.centre-node>.node-label{font-size:23px}}
/* Restrained movement for genuinely linked stone imagery. */
.stone-node{isolation:isolate}.hover-tile{display:block;position:absolute;inset:0;z-index:-1;background-image:url('assets/stone-world-clover.webp');background-repeat:no-repeat;pointer-events:none;mask-image:radial-gradient(ellipse at center,#000 74%,transparent 99%);transition:transform .35s cubic-bezier(.2,.7,.2,1);will-change:transform}.stone-node:hover .hover-tile,.stone-node:focus-visible .hover-tile{transform:translateY(-2px) scale(1.012)}.stone-node>.node-label{z-index:1;transition:transform .35s,color .2s,border-color .2s}.stone-node:hover>.node-label,.stone-node:focus-visible>.node-label{transform:translate(-50%,-2px)}.stone-logo-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.stone-logo-link:hover,.stone-logo-link:focus-visible{transform:translateY(-3px) rotate(-.35deg)}.crest-brand>.brand-crest{transition:transform .35s}.crest-brand:hover>.brand-crest,.crest-brand:focus-visible>.brand-crest{transform:translateY(-2px)}.links-panel a .link-symbol{transition:transform .25s}.links-panel a:hover .link-symbol,.links-panel a:focus-visible .link-symbol{transform:translateY(-2px)}
.weather-widget{position:relative;z-index:10;flex:0 1 auto;min-width:0}.weather-toggle{display:flex;flex-direction:column;align-items:flex-end;gap:3px;padding:5px 0;text-align:right;border-radius:3px}.weather-main{display:flex;gap:8px;align-items:center;justify-content:flex-end;font-size:14px;line-height:1.4;color:#756c5b;flex-wrap:wrap}.weather-place{font-weight:500;color:#625b4d}.weather-time{font-size:11px;color:#92816a;line-height:1.3;min-height:14px}#weather-icon{font-family:'Times New Roman',serif;font-size:20px;font-variant-emoji:text;line-height:1}#weather-icon:empty{display:none}.weather-details{position:absolute;right:0;top:calc(100% + 10px);width:min(330px,calc(100vw - 32px));background:#e4ddd0 url('assets/stone-texture.webp') center/650px;border:1px solid #f8f3e6;border-radius:5px;padding:19px;box-shadow:0 12px 30px #66583c24;color:#665e50;text-align:left}.weather-details[hidden]{display:none}.weather-details p{font-size:14px;line-height:1.6;margin:0 0 13px}.weather-details .weather-source{font-size:12px}.weather-details .weather-privacy{font-size:12px;color:#8b7a62;margin-bottom:0}.weather-widget[data-state="unavailable"] #weather-reading{font-size:12px;color:#8d7d66}.weather-widget[data-state="cached"] .weather-time{color:#8a6c49}
@media(max-width:560px){.weather-main{font-size:12px;gap:5px;max-width:175px;line-height:1.35}.weather-time{font-size:10px}.weather-place{width:auto}.weather-toggle{padding:3px 0}.weather-main #weather-reading{max-width:160px}.weather-widget[data-state="unavailable"] #weather-reading{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hover-tile,.stone-logo-link,.crest-brand>.brand-crest,.link-symbol,.stone-node>.node-label{transition:none!important}.stone-node:hover .hover-tile,.stone-node:focus-visible .hover-tile,.stone-logo-link:hover,.stone-logo-link:focus-visible,.crest-brand:hover>.brand-crest,.crest-brand:focus-visible>.brand-crest,.links-panel a:hover .link-symbol,.links-panel a:focus-visible .link-symbol{transform:none!important}.stone-node:hover>.node-label,.stone-node:focus-visible>.node-label{transform:translateX(-50%)!important}}
/* Requested brand marks as readable stone reliefs, with no dark logo panels. */
.business-entry{grid-template-columns:280px minmax(0,1fr);gap:38px}.business-logo,.business-logo.logo-dark,.business-logo.logo-robodromo{height:auto;aspect-ratio:3/2;width:100%;padding:0;border:1px solid #e8dfce88;background:transparent;overflow:visible;box-shadow:none}.business-logo img,.business-logo.logo-robodromo img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:3px}.stone-logo-link{aspect-ratio:3/2;height:auto}
@media(min-width:1650px){.business-entry{grid-template-columns:320px minmax(0,1fr);gap:45px}}
@media(max-width:1050px){.business-entry{grid-template-columns:240px minmax(0,1fr);gap:28px}}
@media(max-width:820px){.business-entry{grid-template-columns:1fr;gap:27px}.business-logo,.business-logo.logo-dark,.business-logo.logo-robodromo{width:min(100%,420px);height:auto}.business-photo{grid-column:auto}}

/* Reference-matched pale stone and daylight only. Approved composition is unchanged. */
:root{--sidebar-stone:#e8e0d4;--panel-stone:#e8e1d7;--ambient-daylight:linear-gradient(125deg,rgba(111,104,91,.16) 0%,rgba(160,151,135,.07) 12%,rgba(255,253,245,.08) 24%,rgba(255,253,246,.28) 33%,rgba(244,237,224,.03) 42%,rgba(99,89,73,.06) 49%,rgba(255,252,244,.08) 57%,rgba(255,254,247,.32) 70%,rgba(242,233,218,.06) 80%,rgba(98,86,66,.07) 90%,rgba(255,253,246,.14) 100%);--hero-daylight:linear-gradient(125deg,rgba(100,91,76,.025) 0%,rgba(255,252,241,.015) 17%,rgba(255,253,245,.11) 25%,rgba(255,255,249,.34) 34%,rgba(255,253,243,.15) 42%,rgba(96,84,67,.065) 49%,rgba(255,252,243,.055) 57%,rgba(255,255,248,.31) 70%,rgba(255,252,240,.08) 79%,rgba(98,86,68,.07) 90%,rgba(255,254,245,.12) 100%)}
body{background-color:var(--sidebar-stone);background-image:var(--ambient-daylight),linear-gradient(rgba(232,224,212,.86),rgba(232,224,212,.86)),url('assets/stone-texture.webp');background-size:100vw 100vh,auto,1100px;background-position:0 0,0 0,center top;background-attachment:fixed,scroll,scroll}
.left-sidebar{background-color:var(--sidebar-stone);background-image:var(--ambient-daylight),linear-gradient(rgba(232,224,212,.84),rgba(232,224,212,.84)),url('assets/stone-texture.webp');background-size:100vw 100vh,auto,1100px;background-position:0 0,0 0,center top;background-attachment:fixed,scroll,scroll;border-right-color:rgba(255,251,242,.83);box-shadow:inset -1px 0 rgba(136,125,104,.16),6px 0 16px rgba(91,77,54,.035)}
.site-nav a{color:#555149}.site-nav a.active,.site-nav a:hover{background:linear-gradient(135deg,rgba(244,237,225,.83),rgba(207,196,176,.41));border-color:rgba(255,253,245,.82);box-shadow:-4px 6px 10px rgba(85,71,50,.16),inset 1px 1px rgba(255,255,249,.72),inset -1px -1px rgba(148,132,102,.14)}
.brand-rule{background:#a89e8a}.brand-type small,.left-foot p{color:#8b8273}.left-foot>a{color:#655e51}
.right-sidebar{background:transparent}.stone-panel{background-color:var(--panel-stone);background-image:var(--ambient-daylight),linear-gradient(rgba(232,225,215,.88),rgba(232,225,215,.88)),url('assets/stone-texture.webp');background-size:100vw 100vh,auto,1100px;background-position:0 0,0 0,center top;background-attachment:fixed,scroll,scroll;border-color:rgba(255,253,246,.7);box-shadow:-2px 3px 8px rgba(107,90,65,.055),inset 1px 1px rgba(255,255,250,.5),inset -1px -1px rgba(163,149,123,.09)}
.panel-heading{border-bottom-color:rgba(177,162,134,.32);color:#565148}.profile-title h1,.links-panel h2{color:#4f4b43}.profile-title p{color:#908675}.profile-copy>p{color:#625c52}.profile-tags span{color:#746b5c;background:rgba(206,194,173,.45)}.profile-copy>a,.links-panel a{color:#5c564b}.links-panel small,.link-kind,.links-panel h2 span{color:#918571}.links-panel li+li{border-top-color:rgba(182,168,140,.1)}.link-symbol{color:#746957}
.weather-details{background-color:var(--panel-stone);background-image:var(--ambient-daylight),linear-gradient(rgba(232,225,215,.88),rgba(232,225,215,.88)),url('assets/stone-texture.webp');background-size:100vw 100vh,auto,1100px;background-attachment:fixed,scroll,scroll;border-color:rgba(255,253,246,.8);box-shadow:-5px 10px 20px rgba(88,72,46,.13)}
.stone-graph::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;background:var(--hero-daylight)}
.hover-tile{background-image:var(--hero-daylight),url('assets/stone-world-clover.webp')}
.stone-logo-link{position:relative}.stone-logo-link::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:3px;background:var(--hero-daylight);opacity:.5}
@media(max-width:1050px){.left-sidebar{box-shadow:inset 0 -1px rgba(136,125,104,.12);border-bottom-color:rgba(255,251,242,.8)}}

/* Larger crest and sidebar weather; the former header is removed. */
.crest-brand{flex-direction:column;align-items:center;gap:14px;text-align:center}
.crest-brand>.brand-crest{width:min(80%,180px);height:auto}
.brand-name{display:block;width:100%;font:400 clamp(22px,1.55vw,30px)/1.15 var(--serif);letter-spacing:-.4px;color:#504c43}
.brand-rule{margin:22px auto 28px}
.sidebar-navigation{min-width:0}
.sidebar-navigation .weather-widget{margin:25px 10px 0}
.sidebar-navigation .weather-toggle{width:100%;align-items:flex-start;text-align:left;padding:5px 0}
.sidebar-navigation .weather-main{justify-content:flex-start;max-width:none;font-size:14px;gap:7px;line-height:1.4}
.sidebar-navigation .weather-place{flex-basis:100%;font-size:14px}
.sidebar-navigation .weather-main #weather-reading{max-width:100%;overflow-wrap:anywhere}
.sidebar-navigation .weather-time{font-size:11px;color:#746957}
.sidebar-navigation .weather-details{position:static;width:100%;margin-top:12px;padding:15px;overflow-wrap:anywhere}
.left-foot{padding:32px 10px 5px}
.hero-area{padding-top:16px}
@media(max-width:1050px){
 .left-sticky{display:grid;grid-template-columns:124px minmax(0,1fr);align-items:center;gap:22px;padding:14px 22px}
 .crest-brand{gap:8px}.crest-brand>.brand-crest{width:100px}.brand-name{font-size:20px;letter-spacing:-.3px}
 .sidebar-navigation .site-nav{justify-content:flex-end;flex-wrap:wrap}
 .sidebar-navigation .weather-widget{margin:12px 9px 0}
 .sidebar-navigation .weather-place{flex-basis:auto}
 .sidebar-navigation .weather-details{max-width:430px}
 .hero-area{padding-top:12px}
}
@media(max-width:560px){
 .left-sticky{grid-template-columns:104px minmax(0,1fr);gap:17px;padding:12px 14px;align-items:center}
 .crest-brand>.brand-crest{width:90px}.brand-name{font-size:18px;letter-spacing:-.35px}
 .sidebar-navigation .site-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:100%}
 .sidebar-navigation .site-nav a,.sidebar-navigation .site-nav a:last-child{font-size:12px;padding:8px 5px;min-height:34px}
 .sidebar-navigation .weather-widget{margin:10px 5px 0}
 .sidebar-navigation .weather-main{font-size:12px;gap:6px}
 .sidebar-navigation .weather-place{flex-basis:100%;font-size:12px}
 .sidebar-navigation .weather-time{font-size:10px}
 .sidebar-navigation .weather-details{padding:12px}
 .hero-area{padding-top:10px}
}

/* The sidebar displays the original hero crest through a fixed, softly edged viewport. */
.brand-crest{display:block;overflow:hidden}
