@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600&family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--paper:#fbf5ef;--ink:#293f3d;--blue:#254d62;--lime:#d4dda4;--line:#b6b9a5;--soft:#e8cdc5;--pink:#e8cdc5;--lake:#94b4c4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-.025em}h2{font-size:clamp(2.6rem,4.3vw,4.5rem)}em{font-weight:400}.header{min-height:100px;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:#fffefb}.wordmark{font-family:'Caveat',Georgia,serif;font-size:36px;line-height:1}.wordmark span{display:block;font:12px/1.4 serif;letter-spacing:5px;text-align:center;margin-top:9px}.header nav{display:flex;gap:36px;font-size:14px;text-transform:uppercase;letter-spacing:1.6px}.header a:hover{text-decoration:underline;text-underline-offset:6px}.instagram{font-size:14px;border-bottom:1px solid;padding:6px 0}.hero{position:relative;isolation:isolate;min-height:720px;height:calc(100svh - 100px);max-height:1000px;display:flex;justify-content:center;text-align:center;overflow:hidden;background:#d8dfd5}.hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 63%}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#f6f8f2ed 0%,#f6f8f2c4 22%,#f6f8f220 54%,transparent 74%,#1733218c 100%)}.hero-copy{padding:42px 20px 220px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.4px;margin-bottom:22px}.hero h1{font-family:'Caveat',Georgia,serif;font-size:clamp(5rem,10.5vw,10rem);letter-spacing:-.04em;line-height:1.12}.chinese{font-size:20px;letter-spacing:10px;margin:4px 0 12px;padding-left:10px}.intro{font-size:17px}.hero-links{display:flex;justify-content:center;gap:30px;margin-top:22px;font-size:14px}.hero-links a{border-bottom:1px solid;padding-bottom:3px}.hero-bottom{position:absolute;bottom:25px;left:5%;right:5%;display:flex;justify-content:space-between;gap:20px;color:white;font-size:14px;letter-spacing:.4px}.hero-bottom span{text-decoration:underline;text-underline-offset:5px}.section{max-width:1500px;margin:auto;padding:95px 6%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:45px}.section-heading>p{max-width:320px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px}.image-button{width:100%;display:block;padding:0;border:0;background:#e4e6e0;position:relative;overflow:hidden}.image-button img{aspect-ratio:4/5;object-fit:cover;transition:transform .3s}.image-button:hover img{transform:scale(1.025)}.image-button span{position:absolute;inset:auto 12px 12px;background:#fffefbea;padding:10px 12px;text-align:left;font-size:14px;opacity:0;transition:opacity .15s}.image-button:hover span,.image-button:focus-visible span{opacity:1}.work-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:15px}.work-label h3{font-size:17px;font-weight:500;line-height:1.5}.work-label>span{font-size:12px}.work>p{font-size:14px;line-height:1.6;color:#526653;margin-top:5px}.journey{max-width:none;background:var(--soft)}.travel-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:8%;align-items:center;max-width:1320px;margin:auto}.journey .section-heading{max-width:1320px;margin-inline:auto}.film{background:var(--paper);padding:18px;transform:rotate(-1deg);box-shadow:0 12px 32px #24433212}.film-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;letter-spacing:1px;padding-bottom:14px}.film-window{position:relative;aspect-ratio:1.1;overflow:hidden;background:#dfe1e5}.film-window img{height:100%;object-fit:cover;object-position:50% 58%}.film-label{position:absolute;bottom:15px;left:15px;background:var(--paper);padding:4px 12px;font:24px/1.4 'Caveat',Georgia,serif}.film-controls{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.film-controls button{border:0;background:transparent;padding:6px 0;font-size:14px}.film-controls button:hover{text-decoration:underline}.chapter-number{font-size:12px;letter-spacing:2px;margin-bottom:18px}.travel-copy h3{font:400 36px/1.2 'DM Serif Display',Georgia,serif;margin-bottom:20px}.travel-copy>p{max-width:420px}.handwritten{font:30px/1.3 'Caveat',Georgia,serif;margin:24px 0;color:var(--blue)}.chapter-list{border-top:1px solid var(--line);margin-top:25px}.chapter{display:grid;grid-template-columns:32px 1fr 20px;gap:15px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:16px 12px;font-size:16px}.chapter.active{background:var(--lime)}.chapter:hover{background:#e5e9d5}.chapter span:first-child{font-size:12px}.small-note{font-size:13px;line-height:1.7;margin-top:24px;color:#53655e}.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story-image img{aspect-ratio:4/5;object-fit:cover}.story-image>p{font:26px/1.4 'Caveat',Georgia,serif;margin:15px 0;text-align:center}.story-copy h2{font-size:clamp(2.4rem,3.5vw,3.6rem);margin-bottom:28px}.story-copy>p:not(.eyebrow){margin:18px 0}.brand-line{font:38px/1.2 'Caveat',Georgia,serif;margin:28px 0;color:var(--blue)}details{border-top:1px solid var(--line);padding-top:16px}summary{display:flex;justify-content:space-between;cursor:pointer;font-size:14px}details p{margin-top:20px;font-size:16px;line-height:2}.contact{max-width:none;background:var(--ink);color:var(--paper);text-align:center;padding-block:75px}.contact h2{font:600 clamp(3.5rem,7vw,6rem)/1.1 'Caveat',Georgia,serif}.contact>p:not(.eyebrow){margin:22px 0}.contact .handle{font-size:14px}.button{display:inline-flex;align-items:center;gap:25px;border:1px solid currentColor;padding:13px 22px;font-size:14px}.button:hover{background:#ffffff15}footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:35px 5%;flex-wrap:wrap}footer p,footer>span{font-size:12px}dialog{width:90%;max-width:1000px;max-height:90dvh;overflow:auto;padding:55px 35px 35px;border:1px solid var(--ink);color:var(--ink);background:var(--paper)}dialog::backdrop{background:#172c21b0;backdrop-filter:blur(4px)}.close{position:absolute;top:12px;right:20px;border:0;background:none;font-size:14px;padding:6px}.dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.dialog-grid>div:first-child>img{max-height:65vh;object-fit:contain}.dialog-grid h2{font-size:38px;margin-bottom:22px}.dialog-grid a{display:inline-block;border-bottom:1px solid;margin-top:25px}.detail-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}.detail-controls[hidden]{display:none}.detail-controls button,#motion-toggle{border:1px solid var(--line);background:transparent;padding:8px 12px;font-size:14px}.detail-controls span{font-size:14px}#motion-toggle{white-space:nowrap}.image-button:disabled{cursor:default}.image-button:disabled span{display:none}.skip{position:fixed;top:-80px;left:10px;z-index:100;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}@media(min-width:1600px){.journey{padding-inline:max(6%,calc((100vw - 1320px)/2))}}@media(max-width:900px){.header nav{gap:20px;letter-spacing:.7px}.hero{min-height:640px}.gallery{gap:35px 20px}.section{padding:70px 5%}.travel-layout{gap:5%}.story{gap:6%}.film{padding:12px}.film-top{letter-spacing:0}.hero-photo{object-position:center 65%}}@media(max-width:650px){.header{padding:18px 6%;gap:20px;flex-wrap:wrap;min-height:130px}.wordmark{font-size:30px}.header nav{order:3;width:100%;justify-content:space-between;gap:12px;font-size:14px}.instagram{font-size:14px}.hero{height:calc(88svh - 130px);min-height:580px;max-height:740px}.hero-copy{padding-top:35px;width:100%}.hero h1{font-size:clamp(4.2rem,17vw,6rem)}.hero .eyebrow{font-size:12px;letter-spacing:1.6px;margin-bottom:12px}.chinese{font-size:17px;letter-spacing:8px}.intro{font-size:16px;max-width:280px;margin:auto}.hero-links{gap:22px;flex-wrap:wrap}.hero-photo{object-position:51% 65%}.hero-bottom{font-size:13px;left:6%;right:6%;text-align:left;align-items:end}.hero-bottom span{max-width:140px;text-align:right}.section{padding:58px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:18px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.work-label{align-items:start;gap:6px}.work-label h3{font-size:16px}.work-label>span{display:none}.work>p{font-size:14px}.image-button span{display:none}.travel-layout,.story{grid-template-columns:1fr;gap:40px}.film-top{font-size:12px}.film-label{font-size:22px}.travel-copy h3{font-size:32px}.story-image{max-width:420px;margin:auto}.story-copy h2{font-size:36px}.contact h2{font-size:62px}footer{gap:24px}footer p{max-width:165px}.dialog-grid{grid-template-columns:1fr;gap:20px}.dialog-grid>div:first-child>img{max-height:45vh}.dialog-grid h2{font-size:30px}dialog{padding:48px 20px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Colours and original artwork from the supplied Hollow Valley brand story. */
.header{background:var(--pink);color:var(--ink);border-bottom:1px solid #293f3d20}.illustrated-hero{display:block;min-height:0;height:auto;max-height:none;background:var(--pink);overflow:hidden}.illustrated-hero:before{display:none}.illustrated-hero .hero-copy{padding:45px 20px 0;position:relative;z-index:1}.illustrated-hero h1{font-size:clamp(4.5rem,9vw,8rem)}.illustrated-hero .hero-links{margin-top:19px}.valley-panorama{position:relative;width:100%;aspect-ratio:1280/550;overflow:hidden;margin-top:-10px}.valley-panorama img{position:absolute;top:0;left:0;width:100%;height:auto;max-width:none}.valley-caption{margin:0;padding:18px 20px 23px;background:var(--lake);font:28px/1.3 'Caveat',Georgia,serif;color:var(--ink)}.works{background:var(--paper)}.journey{background:var(--pink)}.film{box-shadow:0 10px 30px #6f59551a}.chapter.active{background:var(--lime)}.brand-story{max-width:none;background:var(--lake);padding:90px max(6%,calc((100vw - 1320px)/2));display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:9%;align-items:start}.story-intro{position:sticky;top:35px}.story-intro h2{font-size:clamp(3rem,5vw,5.4rem)}.story-deck{font-size:18px;line-height:1.7;margin-top:25px}.since{font:34px/1.3 'Caveat',Georgia,serif;margin:22px 0}.story-companions{max-width:290px;aspect-ratio:1.1;object-fit:cover;border:10px solid #f9f3e9;transform:rotate(-3deg);margin-top:35px}.brand-story .story-copy{max-width:690px}.story-chapter{margin:0 0 40px;padding:0 0 32px;border-bottom:1px solid #293f3d40}.story-chapter .eyebrow{margin-bottom:12px}.story-chapter h3{font:400 clamp(1.7rem,2.5vw,2.2rem)/1.25 'DM Serif Display',Georgia,serif;margin-bottom:20px}.story-chapter p:not(.eyebrow){font-size:17px;line-height:1.85;margin:15px 0}.story-quote{font:600 clamp(2.7rem,4.8vw,4.4rem)/1.16 'Caveat',Georgia,serif;margin:15px 0 24px}.story-ending{font-size:16px}.contact{background:#d4dda4;color:var(--ink)}footer{background:var(--pink)}.button:hover{background:#ffffff55}.work>p,.small-note{color:#415755}.brand-line{color:var(--blue)}@media(max-width:900px){.brand-story{gap:6%;padding:65px 5%}.story-intro{position:static}.story-chapter p:not(.eyebrow){font-size:16px}}@media(max-width:650px){.illustrated-hero{height:auto;min-height:0;max-height:none}.illustrated-hero .hero-copy{padding:30px 18px 14px}.illustrated-hero h1{font-size:clamp(4rem,16vw,6rem)}.illustrated-hero .eyebrow{font-size:12px;letter-spacing:1px;max-width:280px;margin:0 auto 12px}.valley-panorama{margin-top:0}.valley-caption{font-size:24px;padding:16px}.brand-story{grid-template-columns:1fr;gap:40px;padding:55px 6%}.story-intro h2{font-size:48px}.story-companions{display:none}.story-deck{font-size:17px}.since{margin-bottom:0}.story-chapter{margin-bottom:30px;padding-bottom:25px}.story-chapter .eyebrow{font-size:12px;letter-spacing:1.4px}.story-quote{font-size:45px}}

.catalogue-tools{margin:0 0 30px}.catalogue-filters{display:flex;gap:10px;flex-wrap:wrap}.catalogue-filters button,.catalogue-more{background:transparent;border:1px solid var(--ink);border-radius:24px;padding:9px 18px}.catalogue-filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}.catalogue-count{margin-top:16px;font-size:13px}.catalogue-more{display:block;margin:36px auto 0}.catalogue-more[hidden]{display:none}
