/* Lovely Steals: Velcourne layout pattern, Terracotta accent. Mobile-first (390). */
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/ebgaramond-latin.woff2) format('woff2')}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/ebgaramond-italic-latin.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/montserrat-latin.woff2) format('woff2')}
@font-face{font-family:'LS Serif FB';src:local('Times New Roman'),local('Liberation Serif');size-adjust:93.86%;ascent-override:107.29%;descent-override:31.75%;line-gap-override:0%}
@font-face{font-family:'LS Sans FB';src:local('Arial'),local('Liberation Sans');size-adjust:112%;ascent-override:86%;descent-override:22%;line-gap-override:0%}
:root{--paper:#f8f7f2;--card:#fcfbf8;--bone:#efe9e1;--line:#e7e4dd;--ink:#22201d;--text:#2e2b27;--muted:#6b6761;--accent:#a34a2c;--accent-d:#86391f;--on-accent:#fbfaf7;
--serif:'EB Garamond','LS Serif FB',Georgia,serif;--sans:'Montserrat','LS Sans FB',Arial,sans-serif;--gut:clamp(18px,4.4vw,64px);--max:1320px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font:400 15px/1.6 var(--sans)}
img,video{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
/* header */
.hdr{background:var(--paper);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:16px}
.wordmark{font:500 26px/1 var(--serif);letter-spacing:.01em;color:var(--ink);text-decoration:none;padding:10px 0}
.menu{position:relative}
.menu>summary{list-style:none;cursor:pointer;font:500 12.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:flex-end;color:var(--ink)}
.menu>summary::-webkit-details-marker{display:none}
.menu-list{position:absolute;right:0;top:100%;z-index:5;background:var(--card);border:1px solid var(--line);padding:8px 0;margin:0;list-style:none;min-width:240px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.menu-list a{display:block;padding:11px 18px;text-decoration:none;font:500 14px/1.3 var(--sans);color:var(--ink)}
.menu-list a[aria-current]{color:var(--accent)}
.nav{display:none}
@media(min-width:1000px){.menu{display:none}.nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px clamp(14px,1.6vw,26px);border-top:1px solid var(--line);padding:0 var(--gut)}
.nav a{font:500 12.5px/1 var(--sans);letter-spacing:.04em;color:var(--ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
.nav a[aria-current]{box-shadow:inset 0 -1px 0 var(--accent);color:var(--accent)}
.hdr-in{justify-content:center}}
.assoc{font:400 12px/1.5 var(--sans);color:var(--muted);text-align:center;padding:8px var(--gut);border-bottom:1px solid var(--line)}
.assoc a{color:var(--muted)}
/* type */
h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--accent);margin:0;line-height:1.12}
h1{font-size:clamp(34px,6vw,58px);letter-spacing:-.005em}
h2{font-size:clamp(26px,3.6vw,36px)}
h3{font-size:22px;color:var(--ink)}
.kicker{font:600 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.lede{font:italic 400 clamp(20px,2.6vw,26px)/1.35 var(--serif);color:var(--ink);margin:12px 0 0}
.intro{max-width:62ch;margin:14px 0 0;color:var(--text)}
.crumbs{font:400 12px/1.4 var(--sans);color:var(--muted);margin:18px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";margin-right:6px}
.crumbs a{color:var(--muted)}
.section{padding-block:clamp(28px,5vw,64px)}
.section+.section{padding-top:0}
.head{padding-block:clamp(24px,4vw,48px) clamp(18px,3vw,32px)}
.h1-brand{display:block;font:600 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.h1-sep{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* frames: edge to edge, frame takes the image's own aspect ratio, never letterboxed */
.frame{position:relative;display:block;width:100%;overflow:hidden;margin:0;padding:0;background:transparent}
.frame>img,.frame>video{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.frame.ph{background:var(--bone);display:grid;place-items:center;text-align:center}
.ph-label{font:500 11px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#7a6f63;padding:0 16px}
.ph-label small{display:block;font-weight:400;letter-spacing:.02em;text-transform:none;margin-top:4px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);font:600 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-radius:0}
.btn:hover{background:var(--accent-d);border-color:var(--accent-d)}
.link{font:500 13px/1 var(--sans);letter-spacing:.03em;color:var(--ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:6px}
.link:hover{color:var(--accent)}
.link .arr{font-size:14px}
/* cards */
.grid{display:grid;gap:30px 22px;grid-template-columns:1fr}
@media(min-width:620px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}
.card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:12px;margin:0}
.card h3{align-self:end}
.card .meta{margin:0;color:var(--muted);font-size:13px}
.actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.tiles{display:grid;gap:22px 14px;grid-template-columns:repeat(2,1fr)}
@media(min-width:1000px){.tiles{grid-template-columns:repeat(5,1fr)}}
.tile{text-decoration:none;color:var(--ink);display:grid;row-gap:10px;align-content:start}
.tile>span{font:500 18px/1.2 var(--serif)}
.tile:hover>span{color:var(--accent)}
/* home feature */
.feature{display:grid;gap:22px}
@media(min-width:900px){.feature{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:center}}
.feature .frame{max-width:520px}
.bridge{background:var(--card);border:1px solid var(--line);padding:clamp(22px,4vw,44px)}
.bridge p{max-width:62ch}
.bridge .actions{justify-content:flex-start}
/* look page */
.look{display:grid;gap:26px;padding-bottom:clamp(28px,5vw,64px)}
@media(min-width:900px){.look{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:start}.look .frame{position:sticky;top:16px}}
.look h2{font-size:26px;margin:28px 0 10px}
.look ul{margin:0;padding-left:20px}
.look li{margin:6px 0}
.dek{font:italic 400 22px/1.35 var(--serif);color:var(--ink);margin:10px 0 0}
.colours{margin:14px 0 0;font-size:13px;color:var(--muted)}
.note{font-size:13px;color:var(--muted);margin:0 0 8px}
.pieces{list-style:none;padding:0!important;margin:0;border-top:1px solid var(--line)}
.pieces li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;padding:12px 0;margin:0!important;border-bottom:1px solid var(--line)}
.piece-name{font:500 15px/1.3 var(--sans);color:var(--ink)}
.piece-colour{display:block;font-size:13px;color:var(--muted);font-weight:400}
.slot{font:500 12px/1.3 var(--sans);color:var(--muted);border:1px dashed #c9c4bc;padding:10px 12px;min-height:44px;display:inline-flex;align-items:center}
.amz{font:500 13px/1.3 var(--sans);color:var(--accent);min-height:44px;display:inline-flex;align-items:center}
.paid{margin-left:.4em;font-size:.82em;font-weight:400;opacity:.75;white-space:nowrap}
.assoc-block{font-size:12px;color:var(--muted);margin:10px 0 12px}
.footnote{font-size:12px;color:var(--muted);margin:18px 0 0}
.prose{max-width:68ch;padding-bottom:clamp(28px,5vw,64px)}
.prose h2{font-size:24px;margin:28px 0 8px}
/* footer */
.ftr{border-top:1px solid var(--line);padding:36px 0 44px;font-size:13px;color:var(--muted);margin-top:24px}
.ftr .wordmark{font-size:22px;padding:0}
.ftr nav{display:flex;flex-wrap:wrap;gap:4px 22px;margin:14px 0}
.ftr nav a{min-height:44px;display:inline-flex;align-items:center;color:var(--ink);text-decoration:none}
.ftr p{max-width:80ch;margin:8px 0}
a:has(>.frame),.tile{text-decoration:none}
.frame.ph .ph-label{text-decoration:none}
@media(min-width:620px){.grid.two{grid-template-columns:repeat(2,1fr);max-width:880px}.tiles.three{grid-template-columns:repeat(3,1fr);max-width:880px}}
