@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-900-normal.woff2) format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(/fonts/ibm-plex-mono-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Caveat;src:url(/fonts/caveat-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
:root{--paper:#f5eee2;--paper2:#ece2d0;--ink:#1e1b17;--soft:#5a5248;--red:#b8402c;--pink:#e98b8c;--blue:#3f74b5;--moss:#2f5a39;--ochre:#9a5b1e;--night:#101733;--print:#1d4a73;--line:#d6c9b3;--serif:Fraunces,Georgia,"Times New Roman",serif;--mono:"Plex Mono",ui-monospace,Menlo,Consolas,monospace;--hand:Caveat,"Comic Sans MS",cursive;--wrap:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--serif);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--red);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:2px}
h1,h2,h3{font-family:var(--serif);line-height:1.08;margin:0 0 .5em;font-weight:900;letter-spacing:-.01em}
h1{font-size:clamp(2.5rem,6.6vw,5.4rem)}
h2{font-size:clamp(1.9rem,4vw,3.1rem)}
h3{font-size:1.35rem;font-weight:700}
p{margin:0 0 1em}
em{font-style:italic;font-weight:400}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.6em 1em;z-index:99}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.eyebrow,.tag,.kicker{font:600 .74rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin:0 0 .9em}
.lede{font-size:1.22rem;line-height:1.5}
.hand{font-family:var(--hand);font-size:1.45rem;line-height:1.15;color:var(--red)}
/* header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(245,238,226,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;gap:18px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:600 1.05rem var(--mono);letter-spacing:.08em}
.brand img{width:38px;height:38px;border-radius:8px}
.brand b{font-weight:600;color:var(--red)}
.brand .cur{animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
#site-nav{margin-left:auto;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
#site-nav a{color:var(--ink);text-decoration:none;font:500 .93rem var(--serif);padding:.45em .7em;border-radius:999px}
#site-nav a:hover,#site-nav a[aria-current=page]{background:var(--paper2)}
#site-nav a.nav-design{background:var(--ink);color:var(--paper)}
#site-nav a.nav-design:hover{background:var(--red)}
.menu-button{display:none;margin-left:auto;font:600 .85rem var(--mono);background:var(--ink);color:var(--paper);border:0;border-radius:999px;padding:.6em 1.1em;cursor:pointer}
@media (max-width:1020px){.menu-button{display:block}#site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:2px solid var(--ink);flex-direction:column;align-items:stretch;padding:10px 16px 18px}#site-nav.open{display:flex}#site-nav a{font-size:1.1rem;padding:.7em .8em;border-radius:8px}}
/* buttons */
.button{display:inline-flex;align-items:center;gap:.4em;font:600 .92rem var(--mono);letter-spacing:.02em;text-decoration:none;border-radius:999px;padding:.85em 1.35em;border:2px solid var(--ink);cursor:pointer;line-height:1.2;text-align:center}
.button.primary{background:var(--ink);color:var(--paper)}
.button.primary:hover{background:var(--red);border-color:var(--red)}
.button.ghost{background:transparent;color:var(--ink)}
.button.ghost:hover{background:var(--ink);color:var(--paper)}
.button.wa{background:#1f7a4a;border-color:#1f7a4a;color:#fff}
.button.wa:hover{background:#155c37}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:1.4em 0}
/* hero */
.hero{padding:70px 0 40px;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center}
.hero h1 em{color:var(--red)}
.hero .lede{max-width:34em}
.catalogue{background:#fffdf7;border:1px solid var(--line);box-shadow:6px 8px 0 var(--ink);padding:26px 26px 20px;position:relative;transform:rotate(1.2deg);background-image:repeating-linear-gradient(transparent 0 31px,#e7ddcc 31px 32px);background-position:0 62px}
.catalogue:before{content:"";position:absolute;left:52px;top:0;bottom:0;border-left:2px solid #e8a3a0}
.catalogue .cat-no{font:600 .78rem var(--mono);color:var(--soft);display:flex;justify-content:space-between;margin-bottom:12px;padding-left:40px}
.catalogue h2{font-size:1.5rem;padding-left:40px;margin:0 0 .3em}
.catalogue ul{list-style:none;margin:0 0 12px;padding:0 0 0 40px;font-size:1.02rem;line-height:32px}
.catalogue li span{font:400 .78rem var(--mono);color:var(--soft)}
.catalogue .stamp{position:absolute;right:18px;bottom:22px;transform:rotate(-12deg);border:3px double var(--red);color:var(--red);font:600 .78rem/1.2 var(--mono);padding:.4em .6em;letter-spacing:.1em;text-align:center;opacity:.85}
.door{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-left:40px}
.door button{font:600 .85rem var(--mono);background:var(--red);color:#fff;border:0;border-radius:6px;padding:.7em 1em;cursor:pointer}
.door button:hover{background:var(--ink)}
.door output{font-size:.98rem}
.studio-ribbon{background:var(--ink);color:var(--paper)}
.studio-ribbon .wrap{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.studio-ribbon p{margin:0;font-size:1.05rem}
.studio-ribbon strong{color:#ffd9a8}
.studio-ribbon a{color:var(--paper);font:600 .88rem var(--mono)}
/* sections */
.section{padding:80px 0}
.section-head{max-width:46em;margin-bottom:34px}
.section-head p:last-child{color:var(--soft)}
.rule{border:0;border-top:1px solid var(--line);margin:0}
/* worlds */
.worlds{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.world{position:relative;border-radius:4px;padding:30px 28px 26px;min-height:330px;display:flex;flex-direction:column;overflow:hidden;isolation:isolate}
.world h3{font-size:2rem;margin-bottom:.25em}
.world .kicker{color:inherit;opacity:.8}
.world .nets{list-style:none;margin:16px 0 18px;padding:0;display:grid;gap:10px}
.world .nets li{display:flex;flex-direction:column}
.world .nets a,.world .nets .soon-name{font:700 1.25rem var(--serif);color:inherit}
.world .nets small{font-size:.92rem;opacity:.86;max-width:34em}
.world .foot{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.world .filter-link{font:600 .8rem var(--mono);background:none;border:1.5px solid currentColor;color:inherit;border-radius:999px;padding:.5em .95em;cursor:pointer;text-decoration:none}
.world .motif{position:absolute;right:-10px;bottom:-10px;width:190px;opacity:.16;z-index:-1;pointer-events:none}
.badge{display:inline-block;font:600 .68rem var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:.25em .6em;border-radius:3px;background:var(--ink);color:var(--paper);vertical-align:middle;margin-left:.4em}
.badge.soon{background:#ffd9a8;color:#3b2508}
.w-nature{background:#fbf7ec;color:#1f3a25;border:1px solid #c9d3b8;background-image:repeating-linear-gradient(transparent 0 29px,#dfe6cf 29px 30px)}
.w-nature .hand{color:#2f5a39;transform:rotate(-2deg);margin:0 0 10px}
.w-nature figure{margin:0 0 14px;max-width:270px;background:#fff;padding:8px 8px 6px;box-shadow:0 2px 8px rgba(0,0,0,.14);transform:rotate(-1.5deg)}
.w-nature figcaption{font:400 .66rem/1.35 var(--mono);color:#4b4b4b;margin-top:5px}
.w-nature figcaption a{color:#2f5a39}
.w-pre{color:#fff8ee;background:linear-gradient(180deg,#8a4d1b 0 22%,#a8662b 22% 38%,#7a3f17 38% 52%,#b77a3d 52% 64%,#5f3112 64% 80%,#46230c 80%)}
.w-pre .world-in{background:rgba(40,20,6,.55);padding:18px;border-radius:3px;margin:-6px -6px 0}
.w-space{background:radial-gradient(1.5px 1.5px at 20% 30%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 70% 20%,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 85% 60%,#cfe 50%,transparent 51%),radial-gradient(1px 1px at 40% 80%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 55% 45%,#fff 50%,transparent 51%),radial-gradient(1.2px 1.2px at 10% 70%,#fff 50%,transparent 51%),radial-gradient(circle at 92% 110%,#2a3a78 0 22%,transparent 23%),var(--night);color:#e8ecff}
.w-flight{background-color:var(--print);color:#eaf3ff;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:24px 24px}
.w-flight h3,.w-flight .nets a{font-family:var(--mono);font-weight:600;letter-spacing:.02em}
.w-storms{color:#f2f5fa;background-color:#2c3a4b;background-image:repeating-linear-gradient(105deg,rgba(255,255,255,.07) 0 1px,transparent 1px 14px),linear-gradient(180deg,#1b2431 0,#3a4b5e 100%)}
.w-storms h3{color:#ffd23f}.w-storms .nets a{color:#fff}
.w-lang{color:#3a1e14;background:#fbf3e6;border:10px solid transparent;border-image:repeating-linear-gradient(135deg,#c8452d 0 12px,#fbf3e6 12px 20px,#2c5f8a 20px 32px,#fbf3e6 32px 40px) 10;padding:22px 20px 18px}
.w-lang h3{color:#c8452d}.w-lang .nets a{color:#1f5f6b}.w-lang .motif{color:#c8452d}
.w-pre .motif,.w-space .motif,.w-flight .motif,.w-storms .motif{opacity:.28}
/* featured */
.featured{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.feat{background:#fffdf7;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s}
.feat:hover{transform:translateY(-3px)}
.feat img{aspect-ratio:3/2;object-fit:cover;border-bottom:1px solid var(--line)}
.feat .in{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.feat h3{font-size:1.3rem}
.feat p{font-size:.96rem;color:var(--soft)}
.feat a.go{margin-top:auto;font:600 .82rem var(--mono)}
/* more / play */
.more-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px}
.panel{background:#fffdf7;border:1px solid var(--line);padding:24px;border-radius:3px}
.panel.dark{background:var(--ink);color:var(--paper)}
.panel.dark .tag{color:#d7c9b2}
.road{position:relative;height:250px;background:#2b2b2b;border-radius:6px;overflow:hidden;margin:12px 0;border:3px solid var(--ink)}
.lane{position:absolute;top:0;bottom:0;width:0;border-left:3px dashed #e9e1cf;opacity:.55}
.lane.one{left:33.3%}.lane.two{left:66.6%}
.player,.obstacle{position:absolute;width:13%;text-align:center;font:700 26px/1 var(--mono)}
.player{bottom:14px;color:#ffd9a8}
.obstacle{top:-40px;color:var(--pink)}
#race-score{position:absolute;top:8px;left:10px;font:600 .78rem var(--mono);color:#fff;background:rgba(0,0,0,.45);padding:.2em .5em;border-radius:3px}
.game-controls{display:flex;gap:8px}
.game-controls button{flex:1;font:600 1rem var(--mono);padding:.7em;border-radius:6px;border:2px solid var(--paper);background:transparent;color:var(--paper);cursor:pointer}
.game-controls button:hover:not(:disabled){background:var(--paper);color:var(--ink)}
.reveal{font:600 .85rem var(--mono);border:2px solid var(--ink);background:none;border-radius:999px;padding:.55em 1em;cursor:pointer}
.answer{margin-top:12px;font-weight:700}
.linklist{list-style:none;padding:0;margin:0}
.linklist li{border-top:1px dashed var(--line);padding:.6em 0}
.linklist li:first-child{border-top:0}
.linklist a{font-weight:700}
.linklist span{display:block;font-size:.9rem;color:var(--soft)}
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}
.doors .panel h3{font-size:1.25rem}
/* directory */
.dir-tools{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.dir-tools label{font:600 .78rem var(--mono);letter-spacing:.08em;text-transform:uppercase}
#site-search{font:1rem var(--serif);padding:.7em .9em;border:2px solid var(--ink);border-radius:6px;background:#fffdf7;min-width:min(340px,100%)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 16px}
.chips button{font:600 .78rem var(--mono);border:1.5px solid var(--ink);background:none;border-radius:999px;padding:.45em .85em;cursor:pointer;color:var(--ink)}
.chips button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
#dir-count{font:600 .82rem var(--mono);color:var(--soft)}
.dir{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 26px}
.dir li{border-top:1px solid var(--line);padding:.85em 0}
.dir .cat{font:600 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.dir a,.dir .nolink{font-weight:700;font-size:1.08rem;display:block}
.dir .nolink{color:var(--soft)}
.dir p{margin:0;font-size:.92rem;color:var(--soft)}
.dir .net{font:600 .62rem var(--mono);background:var(--paper2);padding:.15em .45em;border-radius:3px;margin-left:.3em;letter-spacing:.06em;vertical-align:middle;color:var(--ink)}
.disclose{font-size:.9rem;color:var(--soft);border-left:3px solid var(--pink);padding-left:12px;margin-top:24px;max-width:50em}
/* studio */
.studio-home{background:#fffdf7;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.studio-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:46px;align-items:start}
.price-tag{display:inline-block;background:var(--red);color:#fff;font:900 3.6rem/1 var(--serif);padding:.18em .35em .22em;transform:rotate(-3deg);box-shadow:5px 5px 0 var(--ink);margin:8px 0 18px}
.price-tag small{font:600 .9rem var(--mono);display:block;letter-spacing:.06em}
.ticks{list-style:none;padding:0;margin:0 0 1em}
.ticks li{padding:.38em 0 .38em 1.7em;position:relative;border-bottom:1px dashed var(--line)}
.ticks li:before{content:"✓";position:absolute;left:0;color:var(--moss);font-weight:900}
.small{font-size:.9rem;color:var(--soft)}
/* charity */
.give{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.give figure{margin:0}
.give figure img{border-radius:4px;border:1px solid var(--line)}
.dates{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0}
.dates div{border:2px solid var(--ink);padding:.6em .9em;border-radius:4px;background:#fffdf7}
.dates strong{display:block;font:900 1.6rem/1 var(--serif);color:var(--red)}
.dates span{font:600 .72rem var(--mono)}
/* footer */
.site-footer{background:var(--ink);color:#e8dfd0;padding:60px 0 120px;margin-top:0}
.site-footer a{color:#fff}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:30px}
.site-footer h2{font:600 .78rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#c9bba4;margin:0 0 12px}
.site-footer ul{list-style:none;padding:0;margin:0;line-height:2}
.site-footer button.linkish{background:none;border:0;color:#fff;font:inherit;text-decoration:underline;cursor:pointer;padding:0}
.useless{background:#2a2620;border-radius:6px;padding:16px;display:grid;grid-template-columns:90px 1fr;gap:14px;align-items:center}
.useless img{width:90px;transform-origin:50% 90%}
.useless.wobble img{animation:wob .6s ease}
@keyframes wob{25%{transform:rotate(-8deg)}75%{transform:rotate(6deg)}}
.useless p{margin:0 0 .4em;font-size:.95rem}
.useless .hand{color:#ffb3b0;font-size:1.3rem}
.useless button{font:600 .76rem var(--mono);background:var(--pink);color:#2a1414;border:0;border-radius:999px;padding:.55em .9em;cursor:pointer}
#useless-job{min-height:2.6em;font-style:italic}
.legal{margin-top:36px;border-top:1px solid #3d372f;padding-top:18px;font-size:.85rem;color:#bfb29d;display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}
/* standalone pages (carried-over content) */
.page{padding:56px 0 80px}
.page-narrow{max-width:760px}
.crumb{font:600 .8rem var(--mono);display:inline-block;margin-bottom:18px}
.page h1{font-size:clamp(2.2rem,5vw,3.8rem)}
.page h2{font-size:clamp(1.5rem,3vw,2.1rem);margin-top:1.4em}
.page .section{padding:30px 0}
.section-heading{max-width:48em;margin-bottom:26px}
.rb-tagline{font:italic 400 1.5rem var(--serif);color:var(--red)}
.website-offer{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start;margin:24px 0}
.retro-advert img{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}
.offer-inclusions{padding:0;list-style:none}
.offer-inclusions li{padding:.4em 0 .4em 1.7em;position:relative;border-bottom:1px dashed var(--line)}
.offer-inclusions li:before{content:"✓";position:absolute;left:0;color:var(--moss);font-weight:900}
.renewal{background:#ffd9a8;padding:14px 18px;border-radius:4px;margin:14px 0}
.renewal strong{font-size:1.25rem}
.no-payment,.offer-small,.charity-small{font-size:.92rem;color:var(--soft)}
.scope-note,.portfolio-invitation{background:#fffdf7;border:1px solid var(--line);padding:24px 26px;margin:24px 0;border-radius:3px}
.website-enquiry{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;background:#fffdf7;border:2px solid var(--ink);padding:30px;margin:30px 0;border-radius:4px}
.enquiry-steps{padding-left:1.3em}
.form-fields{display:grid;gap:14px}
.form-fields label,.charity-consent{display:grid;gap:5px;font-weight:700;font-size:.95rem}
.form-fields label span{font-weight:400;color:var(--soft)}
input,textarea{font:1rem var(--serif);padding:.65em .8em;border:1.5px solid var(--ink);border-radius:5px;background:#fff;width:100%;color:var(--ink)}
.charity-consent{grid-template-columns:auto 1fr;align-items:start;margin:14px 0;font-weight:400}
.charity-consent input{width:auto;margin-top:.35em}
.form-trap{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
#form-status,#charity-status{font-weight:700;color:var(--red)}
.rb-whatsapp-contact{background:#e3f2e8;border:1px solid #b5d8c1;padding:14px 18px;border-radius:5px;margin:16px 0}
.rb-whatsapp-inline{font-weight:700;color:#155c37}
.shop-strip{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:30px}
.shop-strip img{width:56px;border-radius:8px}
.shop-strip div{display:flex;flex-direction:column}
.charity-hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.charity-hero figure{margin:0}
.charity-hero figcaption{font:var(--hand);font-family:var(--hand);font-size:1.4rem;color:var(--red);margin-top:6px}
.draw-strip{display:flex;flex-wrap:wrap;gap:16px;align-items:center;background:var(--ink);color:var(--paper);padding:20px 24px;border-radius:4px;margin:30px 0}
.draw-strip div{display:flex;flex-direction:column;padding-right:18px;border-right:1px solid #4a443b}
.draw-strip strong{font:900 2rem/1 var(--serif);color:#ffd9a8}
.draw-strip p{margin:0 0 0 auto;font:600 .8rem var(--mono)}
.charity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.charity-card{background:#fffdf7;border:1px solid var(--line);padding:22px;border-radius:3px}
.charity-details{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.charity-faq details{border-top:1px solid var(--line);padding:.8em 0}
.charity-faq summary{font-weight:700;cursor:pointer}
.standalone{padding:56px 22px 80px;max-width:760px;margin:0 auto}
.e404{text-align:center;padding:70px 22px 90px;max-width:640px;margin:0 auto}
.e404 img{width:200px;margin:0 auto 10px}
/* cookie + whatsapp float */
#rb-cookie-panel{position:fixed;left:16px;bottom:16px;z-index:60;max-width:420px;background:#fffdf7;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:16px 18px;font-size:.92rem}
#rb-cookie-panel[hidden]{display:none}
.rb-cookie-actions{display:flex;gap:8px;flex-wrap:wrap}
.rb-cookie-actions button{font:600 .8rem var(--mono);border:2px solid var(--ink);border-radius:999px;padding:.55em .9em;cursor:pointer;background:none;color:var(--ink)}
#rb-cookie-accept{background:var(--ink);color:var(--paper)}
.rb-whatsapp-float{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;gap:8px;align-items:center;background:#1f7a4a;color:#fff;text-decoration:none;font:600 .85rem var(--mono);padding:.7em 1em;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.rb-whatsapp-float:hover{background:#155c37}
/* responsive */
@media (max-width:1020px){.featured{grid-template-columns:repeat(2,1fr)}.more-grid{grid-template-columns:1fr 1fr}.more-grid>:first-child{grid-column:1/-1}.dir{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){body{font-size:16.5px}.catalogue .stamp{display:none}.hero{padding:40px 0 30px}.hero .wrap,.worlds,.studio-grid,.give,.website-offer,.website-enquiry,.charity-hero,.charity-grid,.charity-details,.doors,.more-grid{grid-template-columns:1fr}.featured,.dir{grid-template-columns:1fr}.section{padding:56px 0}.catalogue{transform:none}.foot-grid{grid-template-columns:1fr}.price-tag{font-size:2.8rem}.website-enquiry{padding:20px}.draw-strip div{border:0}.rb-whatsapp-float span{display:none}.rb-whatsapp-float{padding:.8em}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* network shop directory (2026-10-25) */
.shopdir{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}
.shopdir .panel{display:flex;flex-direction:column;gap:.4em}.shopdir .panel h2{font-size:1.4rem;margin:.1em 0}.shopdir .panel p{margin:0}.shopdir .go{margin-top:auto;padding-top:.6em;font-weight:700}

/* retro visitor counter (2026-10-25) */
.hits{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin:1.2rem 0 0;font:600 .8rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.03em}
.hits[hidden]{display:none!important}
.hits-n{display:inline-flex;gap:2px;padding:3px;background:#000;border:3px outset #a8a8a8}
.hits-n span{display:inline-block;min-width:1.1em;padding:.3em .18em;background:#161616;color:#39ff14;text-align:center;font:700 1.05rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 4px rgba(57,255,20,.6)}
