:root{--ink:#18201c;--forest:#172e25;--paper:#f7f7f2;--white:#fff;--muted:#626860;--line:#d4d7ce;--serif:'Bodoni Moda',Georgia,serif;--sans:'Hanken Grotesk',sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;font-weight:400;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{border:0}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid currentColor;outline-offset:5px}em{font-weight:400}::selection{background:#b6c4ac;color:#142219}.skip-link{position:fixed;left:20px;top:12px;padding:14px;background:white;z-index:50;transform:translateY(-180%)}.skip-link:focus{transform:none}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.announcement{height:32px;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#f4f4ed;padding:0 40px;font-size:12px}.announcement>span{letter-spacing:.12em}.announcement p{margin-left:-28px}.announcement a{text-underline-offset:3px}.announcement a:hover{text-decoration:underline}
.header{height:108px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 40px;background:var(--paper);position:relative;z-index:10}.desktop-nav,.header-right{display:flex;gap:30px;align-items:center;font-size:14px}.header-right{justify-content:flex-end}.desktop-nav a,.header-right a{padding:14px 0}.desktop-nav a:hover,.header-right a:hover{text-decoration:underline;text-underline-offset:7px}.wordmark{font-family:var(--serif);font-size:48px;line-height:.9;letter-spacing:-.075em;text-align:center;padding:12px 20px}.wordmark span{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.5em;margin-top:11px;margin-left:8px}.header-shop{display:flex;align-items:center;gap:15px}.header-shop span{font-size:19px}.menu-toggle,.mobile-shop{display:none}.mobile-nav{padding:25px;position:absolute;top:112px;left:0;right:0;z-index:20;background:var(--paper);box-shadow:0 20px 40px #0002}.mobile-nav a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:18px}
.campaign{height:calc(100svh - 140px);min-height:640px;max-height:940px;position:relative;isolation:isolate;overflow:hidden;background:#959991;color:white}.campaign-images{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:3px}.campaign-frame{position:relative;overflow:hidden}.campaign-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 0%;transform:scale(1.035);animation:campaign-in 1.4s ease-out both}.campaign-navy img{object-position:50% 0%}.campaign-cream img{object-position:50% 0%}.campaign:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#0c181b24 0%,transparent 28%,#0b141329 52%,#081511b3 100%)}.campaign-topline{position:absolute;top:28px;left:40px;right:40px;z-index:2;display:flex;justify-content:space-between;letter-spacing:.13em;font-size:12px;text-shadow:0 1px 8px #0006}.campaign-copy{position:absolute;left:5.2%;bottom:60px;z-index:3;animation:copy-in .8s .15s both}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.12em;line-height:1.6}.light{color:#edf0e6}.campaign h1{font-family:var(--serif);font-size:clamp(64px,7.4vw,120px);line-height:.98;letter-spacing:-.055em;font-weight:400;margin:20px 0 30px}.campaign h1 em{letter-spacing:-.06em}.button{min-height:52px;padding:16px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:52px;font-size:14px;transition:background .2s,color .2s}.button span{font-size:21px;line-height:1}.button-white{background:#f9faf4;color:#18201c}.button-white:hover{background:#dce4d4}.button-dark{background:var(--forest);color:white}.button-dark:hover{background:#2b4839}.campaign-caption{position:absolute;right:40px;bottom:86px;z-index:3;text-align:right}.campaign-caption>span{font-size:12px;letter-spacing:.09em}.campaign-caption p{font-family:var(--serif);font-size:24px;line-height:1.35;margin-top:12px}.campaign-scroll{position:absolute;right:40px;bottom:29px;z-index:3;font-size:12px;display:flex;align-items:center;gap:25px;letter-spacing:.1em}.campaign-scroll span{font-size:20px}
.collection-intro{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:38px 5.2%;border-bottom:1px solid var(--line)}.collection-intro p{font-family:var(--serif);font-size:29px;line-height:1.1;letter-spacing:-.03em}.collection-intro>span{font-size:12px;letter-spacing:.13em;color:#555e52}.collection-intro>a{font-size:14px;display:flex;align-items:center;gap:30px}.collection-intro>a span{font-size:21px}.section-space{padding:104px 5.2%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px}h2{font-family:var(--serif);font-size:clamp(40px,4.5vw,72px);line-height:1.06;letter-spacing:-.055em;font-weight:400}.section-heading .eyebrow{margin-bottom:20px}.section-heading-note{max-width:345px}.section-heading-note p{font-size:16px;color:var(--muted);line-height:1.6}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid currentColor;padding:12px 0 9px;font-size:14px}.text-link span{font-size:21px;line-height:1}.text-link:hover{color:#507054}.section-heading-note .text-link{margin-top:10px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-image{position:relative;aspect-ratio:2/2.85;background:#b4b7b0;overflow:hidden}.product-image img{height:100%;width:100%;object-fit:cover;transform:scale(1.03);transition:transform .7s cubic-bezier(.2,.65,.3,1)}.product:hover img,.product:focus-visible img{transform:scale(1.075)}.product-tag{position:absolute;top:16px;left:16px;background:#f7f7f2ed;padding:7px 9px;letter-spacing:.07em;font-size:12px}.product-action{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;justify-content:space-between;background:#f7f7f2f0;padding:15px 16px;font-size:14px;transform:translateY(calc(100% + 14px));transition:transform .28s ease}.product-action span{font-size:20px}.product:hover .product-action,.product:focus-visible .product-action{transform:translateY(0)}.product-info{display:flex;align-items:center;justify-content:space-between;margin-top:20px;gap:15px}.product-info h3{font-size:22px;line-height:1.3;font-weight:400;letter-spacing:-.02em}.product>p{font-size:14px;color:var(--muted);margin-top:7px}.product-colour{height:12px;width:12px;flex:0 0 12px;border-radius:50%;box-shadow:0 0 0 3px var(--paper),0 0 0 4px #c7ccc3}.navy{background:#273244}.cream{background:#dbcfb4}.green{background:#244638}.product-occasion{display:block;margin-top:19px;font-size:12px;letter-spacing:.09em;color:#6d746a}
.editorial{display:grid;grid-template-columns:1fr 1fr;min-height:710px;background:var(--forest);color:var(--paper)}.editorial-image{position:relative;overflow:hidden;background:#afb5a8;min-height:650px}.editorial-image>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 19%;transform:scale(1.04)}.editorial-image>span{position:absolute;bottom:25px;left:30px;background:#f7f7f2ed;color:var(--ink);padding:9px 12px;font-size:12px;letter-spacing:.1em}.editorial-copy{padding:75px 12% 45px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.editorial-copy h2{font-size:clamp(43px,4.2vw,70px);margin:40px 0 28px;line-height:1.13;letter-spacing:-.045em}.editorial-description{max-width:380px;line-height:1.8;color:#d1d8ce;font-size:16px}.light-link{margin-top:25px;color:#eef2e8}.light-link:hover{color:white}.editorial-foot{display:flex;justify-content:space-between;gap:20px;width:100%;font-size:12px;letter-spacing:.07em;color:#b8c4b6;border-top:1px solid #74806d69;padding-top:25px;margin-top:55px}
.fitting-room{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center}.viewer-shell{height:695px;background:#e6e9e1;position:relative;min-width:0}.photo-stage{position:absolute;inset:26px 22px 180px;touch-action:pan-y;cursor:grab;isolation:isolate;display:grid;place-items:center;outline-offset:3px;user-select:none}.photo-stage.is-dragging{cursor:grabbing}.photo-stage:focus-visible{outline:1px solid #536448}.photo-main{margin:0;position:relative;z-index:2;height:100%;width:auto;max-width:88%;aspect-ratio:2/3;background:#b9b9b5;overflow:hidden}.spin-viewport,.spin-transform{height:100%;width:100%;position:relative;overflow:hidden}.spin-transform{transform-origin:50% 40%;will-change:transform}.spin-transform>img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;max-width:none}.spin-transform>img.generated-frame{position:absolute;inset:0;width:200%;height:200%;object-fit:fill;transform:translate(calc(var(--cell-x)*-50%),calc(var(--cell-y)*-50%))}.photo-main figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;gap:12px;padding:30px 15px 13px;background:linear-gradient(transparent,#161916b3);color:white;font-size:12px;pointer-events:none}.photo-origin{position:absolute;left:11px;top:11px;z-index:3;background:#f7f7f2ec;color:var(--ink);font-size:12px;padding:7px 9px;pointer-events:none}.photo-origin.generated{background:#172e25ec;color:white}.photo-expand{position:absolute;z-index:4;right:0;top:0;background:var(--paper);color:var(--ink);height:40px;width:40px;font-size:25px;display:grid;place-items:center}.photo-expand:hover{background:white}.spin-controls{position:absolute;bottom:108px;left:8px;right:8px;display:flex;justify-content:center;gap:6px;align-items:center}.spin-controls button{min-height:42px;padding:0 12px;background:transparent;color:var(--ink);font-size:14px;border:1px solid #a9b2a4;white-space:nowrap}.spin-controls button:hover,.spin-controls button[aria-pressed=true]{background:#d2dacd}.spin-controls button:disabled{opacity:.3}.spin-controls button:focus-visible{outline:2px solid var(--forest);outline-offset:3px}#spin-play{display:flex;align-items:center;justify-content:center;gap:8px;min-width:93px}#spin-play>span:first-child{font-size:16px}.spin-zoom{display:flex;align-items:center;border:1px solid #a9b2a4;height:42px}.spin-zoom button{border:0;width:30px;padding:0;font-size:21px;min-height:40px}.spin-zoom output{font-size:12px;min-width:42px;text-align:center;color:#586351}.spin-scrubber{position:absolute;bottom:53px;left:12%;right:12%}.spin-scrubber input{display:block;width:100%;margin:0;height:22px;accent-color:var(--forest);cursor:ew-resize;background:transparent}.spin-endpoints{display:flex;justify-content:space-between;font-size:12px;color:#626d5a;margin-top:4px}.photo-hint{position:absolute;bottom:17px;left:0;right:0;display:flex;gap:9px;justify-content:center;align-items:center;font-size:14px;color:#626d5a}.photo-hint>span{font-size:23px}.viewer-copy h2{margin:23px 0 24px;font-size:clamp(43px,4.6vw,70px)}.viewer-description{line-height:1.75;color:var(--muted);max-width:350px}.material-picker{border-top:1px solid var(--line);padding-top:25px;margin:35px 0 31px}.material-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.material-heading p{font-size:23px}.material-heading>span{font-size:12px;color:var(--muted)}.swatches{display:flex;gap:28px;margin-top:21px}.swatch{background:transparent;position:relative;min-width:42px;padding:4px 0;font-size:14px;color:var(--muted)}.swatch:before{content:'';display:block;margin:0 auto 9px;width:25px;height:25px;background:var(--swatch);border:3px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px #cad1c6}.swatch.selected:before{box-shadow:0 0 0 1px var(--ink)}.swatch.selected{color:var(--ink)}.viewer-note{font-size:12px;color:#72766b;line-height:1.65;max-width:350px;margin-top:24px}
.trade{text-align:center;padding:78px 24px 86px;border-top:1px solid var(--line);background:#e9ece3}.trade h2{font-size:clamp(36px,4.2vw,66px);margin:25px 0 20px}.trade .text-link{margin-top:8px}.footer-top{padding:70px 5.2%;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:55px;align-items:center;background:var(--forest);color:var(--paper)}.footer-wordmark{font-family:var(--serif);font-size:clamp(65px,8vw,145px);letter-spacing:-.075em;line-height:.9;width:max-content}.footer-wordmark span{display:block;font-family:var(--sans);font-size:14px;letter-spacing:.95em;margin-top:25px;margin-left:9px}.footer-top>p{font-family:var(--serif);font-size:35px;line-height:1.15;letter-spacing:-.035em}.footer-top nav{display:grid;grid-template-columns:1fr;gap:14px;font-size:14px;justify-self:end;min-width:150px}.footer-top nav a:hover{text-decoration:underline;text-underline-offset:5px}.footer-bottom{background:var(--forest);color:#c2ccbd;border-top:1px solid #7b907255;padding:25px 5.2%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.06em}.footer-bottom>a{letter-spacing:0;font-size:14px}
#photo-dialog{border:0;padding:20px;background:var(--paper);color:var(--ink);max-width:90vw;max-height:94svh;min-width:min(360px,90vw);box-shadow:0 30px 90px #0006}#photo-dialog::backdrop{background:#0a1915de;backdrop-filter:blur(8px)}.photo-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:16px;font-size:16px}.photo-dialog-header button{background:none;width:40px;height:40px;font-size:30px}.photo-dialog-open{overflow:hidden}.detail-frame{position:relative;overflow:hidden;aspect-ratio:2/3;max-width:80vw;height:min(70svh,768px);margin:auto;background:#b9b9b5}#original-photo{display:block;width:100%;height:100%;object-fit:contain;margin:0;max-width:none;max-height:none}#original-photo.generated-frame{position:absolute;inset:0;width:200%;height:200%;object-fit:fill;transform:translate(calc(var(--cell-x)*-50%),calc(var(--cell-y)*-50%))}.original-caption{font-size:12px;line-height:1.5;margin-top:16px;color:#646e5d;text-align:center}
@keyframes campaign-in{from{transform:scale(1.09)}to{transform:scale(1.035)}}@keyframes copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1650px){.section-space{padding-inline:max(5.2%,calc((100vw - 1500px)/2))}.campaign-copy{left:max(5.2%,calc((100vw - 1500px)/2))}.campaign-caption{right:6%}.viewer-shell{height:760px}}
@media(max-width:1050px){.announcement,.header{padding-inline:25px}.desktop-nav,.header-right{gap:18px}.header-right>a:first-child{display:none}.campaign{min-height:640px}.campaign-copy{left:35px}.campaign h1{font-size:80px}.campaign-caption{right:28px}.campaign-caption p{font-size:21px}.campaign-caption>span{font-size:12px;display:block;max-width:190px;line-height:1.6}.collection-intro>span{display:none}.section-space{padding:78px 4%}.section-heading h2{font-size:51px}.section-heading-note{max-width:300px}.product-grid{gap:18px}.product-info h3{font-size:20px}.product-tag{font-size:12px;left:10px;top:10px;right:10px;width:max-content;max-width:calc(100% - 20px);line-height:1.5}.editorial-copy{padding:45px 9%}.editorial-copy h2{font-size:46px}.editorial{min-height:640px}.editorial-image{min-height:640px}.editorial-foot{display:none}.fitting-room{gap:6%;grid-template-columns:1.1fr 1fr}.viewer-shell{height:650px}.viewer-copy h2{font-size:48px}.spin-controls{gap:4px}.spin-controls button{padding:0 8px;font-size:12px}#spin-play{min-width:76px;gap:5px}.spin-zoom button{padding:0;width:25px}.spin-zoom output{min-width:35px}.photo-stage{inset-inline:10px}.footer-top{gap:30px}.footer-top>p{font-size:29px}}
@media(max-width:760px){.announcement{height:28px;justify-content:center;padding:0 15px}.announcement>span,.announcement>a{display:none}.announcement p{margin:0;font-size:12px}.header{height:84px;padding:0 22px}.desktop-nav,.header-right{display:none}.menu-toggle{display:flex;align-items:center;justify-self:start;gap:10px;background:none;padding:12px 0;font-size:14px;color:var(--ink)}.menu-lines{width:19px;height:10px;border-block:1px solid;display:inline-block}.mobile-shop{display:block;justify-self:end;font-size:14px}.wordmark{font-size:38px;padding:0 10px}.wordmark span{font-size:10px;margin-top:8px}.campaign{height:calc(100svh - 112px);min-height:620px;max-height:860px}.campaign-images{grid-template-columns:55% 45%;gap:2px}.campaign-frame img{object-position:50% 0%;transform:scale(1.035)}.campaign-navy img{object-position:48% 0%}.campaign-cream img{object-position:49% 0%}.campaign-topline{left:22px;right:22px;top:23px;font-size:12px}.campaign-topline>span:last-child{display:none}.campaign-copy{left:24px;right:24px;bottom:60px}.campaign-copy .eyebrow{font-size:12px}.campaign h1{font-size:clamp(60px,12vw,88px);margin:20px 0 25px;line-height:1.01}.campaign:after{background:linear-gradient(180deg,#0c181b26,transparent 25%,#0b14131a 42%,#081511a6 78%,#081511c9)}.campaign-caption{display:none}.campaign-scroll{right:23px;bottom:18px;font-size:12px;gap:12px}.button{font-size:14px;min-height:50px;padding:14px 20px;gap:45px}.collection-intro{padding:28px 24px;align-items:center}.collection-intro p{font-size:23px}.collection-intro>a{max-width:148px;gap:15px;font-size:14px;line-height:1.5}.section-space{padding:65px 24px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:clamp(38px,7.6vw,52px)}.section-heading .eyebrow{margin-bottom:17px}.section-heading-note{max-width:none;margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:25px}.section-heading-note>p{display:none}.section-heading-note .text-link{margin:0}.product-grid{grid-template-columns:1fr 1fr;gap:30px 16px}.product:last-child{grid-column:1/-1;width:65%;justify-self:center;margin-top:12px}.product-tag{display:none}.product-image{aspect-ratio:2/3}.product-info{margin-top:14px}.product-info h3{font-size:18px}.product-info .product-colour{height:9px;width:9px;flex-basis:9px;box-shadow:0 0 0 2px var(--paper),0 0 0 3px #c7ccc3}.product>p{font-size:13px;line-height:1.5;margin-top:5px}.product-occasion{font-size:12px;letter-spacing:.02em;margin-top:12px}.product-action{display:none}.editorial{display:flex;flex-direction:column}.editorial-image{height:580px;min-height:0}.editorial-image>img{object-position:50% 21%}.editorial-image>span{left:24px;bottom:22px}.editorial-copy{padding:50px 26px 56px}.editorial-copy h2{font-size:clamp(43px,8.7vw,65px);margin:26px 0 23px}.editorial-description{max-width:420px}.light-link{margin-top:23px}.fitting-room{display:flex;flex-direction:column;gap:35px;align-items:stretch}.viewer-copy{display:contents}.viewer-copy>.eyebrow{order:-3}.viewer-copy>h2{order:-2;margin:-18px 0 0;font-size:46px}.viewer-copy>.viewer-description{order:-1;margin-top:-12px;max-width:430px}.viewer-shell{height:660px}.material-picker{margin:-8px 0 0}.viewer-copy>.button{align-self:flex-start;margin-top:-5px}.viewer-note{margin-top:-18px;max-width:none}.spin-controls button{font-size:14px;padding:0 10px}#spin-play{min-width:90px}.spin-zoom button{padding:0;width:28px}.photo-stage{inset-inline:13px}.photo-main{max-width:90%}.trade{padding:56px 23px 62px}.trade h2{font-size:clamp(34px,7vw,48px)}.footer-top{padding:52px 24px;grid-template-columns:1fr 1fr;gap:40px 20px;align-items:start}.footer-wordmark{font-size:72px}.footer-wordmark span{font-size:12px;letter-spacing:.75em;margin-top:17px}.footer-top>p{font-size:29px;justify-self:end}.footer-top nav{grid-column:1/-1;grid-template-columns:1fr 1fr;justify-self:stretch;gap:18px}.footer-bottom{padding:24px;flex-wrap:wrap;gap:19px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>a{margin-left:auto}}
@media(max-width:390px){.campaign{min-height:610px}.campaign h1{font-size:59px}.campaign-copy{left:21px;right:20px}.section-space{padding-inline:20px}.product-grid{gap:28px 14px}.product-info h3{font-size:17px}.product-info .product-colour{display:none}.product-occasion{font-size:12px}.editorial-image{height:490px}.viewer-shell{height:595px}.photo-stage{inset:20px 8px 171px}.spin-controls{gap:4px;bottom:105px;left:4px;right:4px}.spin-controls button{font-size:12px;padding:0 7px}#spin-play{min-width:75px}.spin-zoom button{padding:0;width:24px}.spin-zoom output{min-width:34px}.viewer-copy>h2{font-size:43px}.footer-top>p{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Collection and product pages share the approved homepage identity. */
.product>.product-price{font-size:16px;color:var(--ink);margin-top:12px}.home-viewer-price{font-size:25px;margin:-10px 0 21px}.home-viewer-price span{display:block;font-size:14px;color:var(--muted);margin-top:7px}.shop-heading{padding:67px 5.2% 54px;border-bottom:1px solid var(--line)}.shop-heading>div{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-top:20px}.shop-heading h1,.not-found h1{font-family:var(--serif);font-size:clamp(48px,5.3vw,80px);line-height:1.04;font-weight:400;letter-spacing:-.055em}.shop-heading>div>p{max-width:340px;line-height:1.65;color:var(--muted)}.shop-heading strong{display:block;font-weight:400;font-size:26px;color:var(--ink);margin-top:22px}.shop-heading strong span{font-size:14px;display:block;color:var(--muted);margin-top:0}.catalogue-section{padding:30px 5.2% 90px}.catalogue-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:20px}.catalogue-filters label{display:block;font-size:12px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:9px}.catalogue-filters input,.catalogue-filters select{height:48px;width:100%;min-width:0;border:1px solid var(--line);border-radius:0;padding:0 13px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px}.catalogue-filters select{padding-right:24px}.catalogue-status{display:flex;align-items:center;gap:20px;padding:26px 0;font-size:14px;color:var(--muted)}.catalogue-status>p:last-child{margin-left:auto;font-size:12px}.catalogue-status button{background:none;color:var(--ink);padding:0;font-size:14px;text-decoration:underline;text-underline-offset:4px}.catalogue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px 23px}.catalogue-grid .product-tag{font-size:12px;letter-spacing:.04em;left:10px;top:10px;padding:6px 8px}.catalogue-grid .product-info h3{font-size:20px}.catalogue-grid .product-image{aspect-ratio:2/2.8}.catalogue-grid .product-action{left:8px;right:8px;bottom:8px;padding:12px 13px}.empty-catalogue{text-align:center;padding:100px 20px}.empty-catalogue h2{font-size:42px}.empty-catalogue p{margin:22px 0;color:var(--muted)}.not-found{min-height:60svh;text-align:center}.not-found h1{margin:30px 0}.not-found>p:not(.eyebrow){margin-bottom:30px}
.breadcrumbs{display:flex;align-items:center;gap:14px;padding:25px 5.2%;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}.product-page{padding:4px 5.2% 84px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:6%;align-items:start}.product-gallery{min-width:0}.product-page .viewer-shell{height:748px}.product-page .photo-stage{inset:24px 20px 180px}.product-page .photo-main{max-width:90%}.product-detail{position:sticky;top:24px;padding-top:15px}.product-detail .eyebrow{display:flex;justify-content:space-between;gap:25px}.product-detail .eyebrow span{color:var(--muted);font-weight:400}.product-detail h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4.3vw,63px);letter-spacing:-.045em;line-height:1.12;margin:23px 0 11px}.product-subtitle{color:var(--muted);font-size:17px}.detail-price{font-size:29px;line-height:1.3;margin-top:25px}.detail-included{font-size:12px;letter-spacing:.08em;margin-top:11px;color:var(--muted)}.product-description{font-size:16px;color:#505c50;line-height:1.75;margin-top:25px}.colour-detail{display:flex;align-items:center;gap:12px;margin:23px 0;font-size:14px}.colour-detail span{display:block;height:20px;width:20px;border-radius:50%;box-shadow:0 0 0 3px var(--paper),0 0 0 4px var(--line);margin:4px}.purchase-link{width:100%;justify-content:space-between}.purchase-note{font-size:12px;line-height:1.6;color:#73796c;margin-top:13px}.size-link{display:flex;justify-content:space-between;font-size:14px;padding:21px 0;text-decoration:underline;text-underline-offset:4px}.product-accordions{border-top:1px solid var(--line);margin-top:5px}.product-accordions details{border-bottom:1px solid var(--line)}.product-accordions summary{cursor:pointer;padding:20px 24px 20px 0;font-size:16px;list-style:none;position:relative}.product-accordions summary::-webkit-details-marker{display:none}.product-accordions summary:after{content:'+';position:absolute;right:0;font-size:22px;top:15px;font-weight:400}.product-accordions details[open] summary:after{content:'−'}.product-accordions summary:focus-visible{outline:2px solid var(--forest);outline-offset:-2px}.product-accordions details>div{padding-bottom:22px;color:var(--muted);font-size:14px;line-height:1.7}.product-accordions dl{display:grid;grid-template-columns:1fr 1.7fr;gap:12px 25px;margin:0}.product-accordions dt{color:#374a3a}.product-accordions dd{margin:0}.product-accordions p+p{margin-top:10px}.trade-product-note{font-size:14px;color:var(--muted);line-height:1.7;margin-top:26px}.trade-product-note a{text-decoration:underline;text-underline-offset:4px}.photo-thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.photo-thumbnails button{padding:8px;background:#e6e9e1;border:1px solid transparent;color:var(--ink)}.photo-thumbnails button[aria-pressed=true]{border-color:var(--ink);background:#edf0e7}.photo-thumbnails img{width:auto;height:96px;object-fit:contain;margin:auto}.photo-thumbnails span{display:block;font-size:12px;padding-top:8px}.gallery-note{font-size:12px;line-height:1.7;color:#68745f;max-width:480px;margin-top:17px}.related-section{border-top:1px solid var(--line)}.related-section .product-grid .product:last-child{grid-column:auto;width:auto;margin-top:0}.related-section .section-heading{align-items:flex-end}
@media(max-width:1200px){.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalogue-filters{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:15px}.product-page{gap:4%}.product-page .viewer-shell{height:680px}.product-detail h1{font-size:45px}.product-detail .eyebrow{font-size:12px;letter-spacing:.07em}.photo-thumbnails img{height:83px}}
@media(max-width:900px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-filters{grid-template-columns:1fr 1fr}.shop-heading>div>p{max-width:235px}.shop-heading h1{font-size:51px}.product-page{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.product-page .viewer-shell{height:600px}.product-page .photo-stage{inset-inline:10px}.product-detail h1{font-size:40px}.product-page .spin-controls{gap:3px;inset-inline:3px}.product-page .spin-controls button{padding-inline:6px}.product-page #spin-play{min-width:73px}.product-page .spin-zoom button{width:23px}.product-page .spin-zoom output{min-width:33px}.photo-thumbnails{gap:6px}.photo-thumbnails img{height:70px}}
@media(max-width:760px){.home-viewer-price{margin:-10px 0 -8px}.shop-heading{padding:41px 24px 35px}.shop-heading>div{display:block;margin-top:20px}.shop-heading h1{font-size:clamp(45px,9.2vw,65px)}.shop-heading>div>p{max-width:none;margin-top:27px;font-size:14px}.shop-heading strong{font-size:24px;margin-top:16px}.shop-heading strong span{display:inline;margin-left:8px;font-size:14px}.catalogue-section{padding:26px 24px 65px}.catalogue-filters{gap:18px 12px}.catalogue-search{grid-column:1/-1}.catalogue-filters>div:last-child{grid-column:1/-1}.catalogue-filters input,.catalogue-filters select{font-size:16px}.catalogue-status{padding:25px 0;gap:14px}.catalogue-status>p:last-child{display:none}.catalogue-grid{gap:31px 15px}.catalogue-grid .product-info h3{font-size:18px}.catalogue-grid .product-tag{display:none}.catalogue-grid .product-colour{display:none}.catalogue-grid .product-image{aspect-ratio:2/3}.catalogue-grid .product:last-child{width:auto;grid-column:auto;margin:0}.catalogue-grid .product-price{font-size:15px}.breadcrumbs{padding:21px 24px;font-size:12px;gap:11px;flex-wrap:wrap}.product-page{display:flex;flex-direction:column;padding:5px 24px 58px;gap:0}.product-detail{display:contents}.product-summary{order:-2;margin:0 0 26px;width:100%}.product-summary h1{font-size:47px;line-height:1.05;margin:16px 0 10px}.product-subtitle{font-size:16px}.detail-price{margin-top:17px;font-size:26px}.detail-included{margin-top:8px}.product-gallery{order:-1;width:100%}.product-page .viewer-shell{height:650px}.product-page .photo-stage{inset:21px 14px 178px}.product-page .spin-controls{gap:6px;inset-inline:8px}.product-page .spin-controls button{padding-inline:10px;font-size:14px}.product-page #spin-play{min-width:85px}.product-page .spin-zoom button{width:28px;padding:0}.product-page .spin-zoom output{min-width:37px}.photo-thumbnails{gap:10px;margin-top:14px}.photo-thumbnails img{height:92px}.photo-thumbnails button{padding:7px}.product-purchase{width:100%;margin-top:5px}.product-description{margin-top:25px}.product-accordions dl{grid-template-columns:1fr 1.8fr;gap:12px}.related-section .product-grid{grid-template-columns:1fr 1fr}.related-section .product-grid .product:last-child{grid-column:1/-1;width:65%;margin-top:10px}.related-section .section-heading>.text-link{margin-top:22px}}
@media(max-width:390px){.shop-heading{padding-inline:20px}.shop-heading h1{font-size:44px}.catalogue-section{padding-inline:20px}.catalogue-grid .product-info h3{font-size:17px}.product-page{padding-inline:20px}.breadcrumbs{padding-inline:20px}.product-summary h1{font-size:43px}.product-page .viewer-shell{height:570px}.product-page .photo-stage{inset:18px 8px 166px}.product-page .spin-controls{gap:4px;inset-inline:4px}.product-page .spin-controls button{font-size:12px;padding:0 7px}.product-page #spin-play{min-width:75px}.product-page .spin-zoom button{padding:0;width:24px}.product-page .spin-zoom output{min-width:34px}.product-page .photo-hint{font-size:12px}.photo-thumbnails img{height:76px}.photo-thumbnails{gap:8px}}
@media(max-width:760px){.shop-heading{padding-block:28px}.shop-heading>div{margin-top:15px}.shop-heading h1{font-size:clamp(36px,7.3vw,49px)}.shop-heading>div>p{margin-top:19px}.shop-count-copy{display:none}.shop-heading strong{margin-top:0;font-size:24px}.shop-heading strong span{font-size:14px}.catalogue-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 10px}.catalogue-search{grid-column:1/-1}.catalogue-filters>div:last-child{grid-column:auto}.catalogue-filters select{font-size:14px;padding-left:9px;padding-right:15px}.catalogue-status{padding-block:22px}}
.spin-transform>img:not(.generated-frame){object-fit:cover;transform:scale(1.025)}
