@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#302b2b;--wine:#512533;--line:#e6ded8;--paper:#fcfaf7;--muted:#756e68}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #a77454;outline-offset:4px}.topline{background:var(--wine);color:#fff;text-align:center;font-size:12px;letter-spacing:1px;padding:9px}header{margin:0 5%;height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:34px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-1px}.brand span{display:block;font:10px/2.4 'DM Sans',sans-serif;letter-spacing:3px}nav{display:flex;gap:36px;font-size:14px}.nav-cta{font-size:14px;border-bottom:1px solid var(--wine);padding:8px 0}.nav-cta span{margin-left:22px}main{max-width:1600px;margin:auto;padding:0 5%}.intro{display:flex;justify-content:space-between;align-items:center;padding:48px 0 35px}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:600;color:var(--wine)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(36px,3.5vw,55px);line-height:1.2;margin:14px 0 17px;letter-spacing:-1.3px}em{color:#845746;font-weight:400}.intro p{max-width:570px;color:var(--muted);font-size:15px}.intro-note{display:flex;gap:20px;align-items:center;padding-right:12px}.intro-note p{font-size:13px}.intro-note small{font-size:11px}.monogram{border:1px solid #c6b6a8;border-radius:50%;height:72px;width:72px;display:grid;place-items:center;font:32px 'Playfair Display';color:var(--wine)}.studio{display:grid;grid-template-columns:1.27fr 1fr;border:1px solid var(--line);min-height:610px;background:#fff;scroll-margin-top:25px}.workspace{padding:30px 38px;display:flex;flex-direction:column}.steps{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;gap:8px}.step{display:flex;gap:8px;align-items:center;background:none;border:0;color:#96908b;font-size:12px;padding:0}.step b{border:1px solid var(--line);border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:11px}.step.active{color:var(--wine);font-weight:600}.step.active b{background:var(--wine);border-color:var(--wine);color:white}.step:disabled{cursor:default}#stage{padding:25px 0;flex:1}#stage h2{font-size:32px;line-height:1.2;margin:0 0 8px}#stage>p{color:var(--muted);font-size:14px;margin:0 0 22px}.occasions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.occasion{border:1px solid var(--line);background:#fff;text-align:left;padding:18px;position:relative;min-height:92px;border-radius:2px}.occasion.selected{border-color:var(--wine);background:#faf4f3;box-shadow:inset 0 0 0 1px var(--wine)}.occasion strong{display:block;font-size:15px;font-weight:500}.occasion small{font-size:12px;color:var(--muted)}.occasion .symbol{float:left;font-size:22px;margin-right:15px;color:var(--wine)}.occasion.selected:after{content:'✓';position:absolute;right:12px;top:8px;color:var(--wine);font-size:12px}.extra{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.chip{border:1px solid var(--line);border-radius:20px;font-size:12px;background:white;padding:6px 11px}.chip.selected{background:var(--wine);color:white;border-color:var(--wine)}.stage-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:23px}.stage-footer>span{font-size:10px;color:var(--muted)}.primary{background:var(--wine);color:white;border:0;padding:13px 20px;font-size:13px}.primary span{margin-left:18px}.editorial{position:relative;overflow:hidden;min-height:610px;background:#9c8c80}.editorial>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 40%}.editorial:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(23,14,12,.67))}.photo-caption{position:absolute;z-index:1;bottom:40px;left:37px;color:white}.photo-caption>span{font-size:10px;letter-spacing:3px}.photo-caption h2{font-size:56px;line-height:1.04;margin:16px 0}.photo-caption em{color:#fff}.photo-caption p{font-size:12px;letter-spacing:.4px}.photo-tag{position:absolute;right:22px;top:24px;background:#fff9;padding:6px 10px;font-size:9px;letter-spacing:2px}.colour-note{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:55px;align-items:center;padding:65px 0;border-bottom:1px solid var(--line)}.colour-note h2{font-size:34px;line-height:1.2;margin:14px 0 0}.colour-note p{font-size:14px;color:var(--muted)}.mini-palette{display:flex;flex-wrap:wrap}.mini-palette div{height:65px;flex:1}.mini-palette span{width:100%;font-size:9px;letter-spacing:1.4px;margin-top:12px}.about{text-align:center;max-width:680px;padding:65px 10px;margin:auto}.about h2{font-size:37px;line-height:1.3}.about p{font-size:15px;color:var(--muted)}.about .reseller{font-size:12px;letter-spacing:1px;color:var(--wine);margin-top:25px}footer{border-top:1px solid var(--line);margin:0 5%;padding:30px 0;display:flex;align-items:center;justify-content:space-between}footer .brand{font-size:26px}footer p,footer span{font-size:11px;color:var(--muted)}.palettes{display:grid;gap:10px}.palette{border:1px solid var(--line);background:white;text-align:left;padding:12px;display:flex;align-items:center;gap:15px}.palette.selected{border:2px solid var(--wine);padding:11px;background:#fcf7f5}.swatches{display:flex}.swatches i{display:block;width:34px;height:42px}.palette strong{display:block;font-size:14px}.palette small{display:block;font-size:11px;color:var(--muted)}.tip{background:#f7f2ed;padding:14px 16px;font-size:13px;margin-top:18px}.tip strong{color:var(--wine)}.budget{display:grid;gap:12px}.budget button{border:1px solid var(--line);background:white;padding:17px;text-align:left;display:flex;justify-content:space-between}.budget button.selected{border:2px solid var(--wine);padding:16px;background:#faf4f3}.budget small{color:var(--muted)}.products{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.product{background:none;border:none;text-align:left;padding:0}.product img{width:100%;height:195px;object-fit:cover;background:#eee}.product small{display:block;color:var(--muted);font-size:10px;margin-top:8px}.product h3{font:14px 'DM Sans';margin:5px 0}.product span{font-size:14px;color:var(--wine)}.source-note{font-size:11px!important;margin-top:20px!important}.source-note a{text-decoration:underline}.summary{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.summary span{padding:4px 8px;background:#f4eeee;font-size:11px}.results-mode{grid-template-columns:1.65fr 1fr}.results-mode .editorial{max-height:760px;position:sticky;top:20px}.results-mode .workspace{min-width:0}dialog{border:0;padding:35px;max-width:760px;width:90%;max-height:90vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#211b1bb3}.close{position:absolute;right:10px;top:8px;background:none;border:0;font-size:22px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.detail-grid img{width:100%}.detail-grid h2{font-size:30px;line-height:1.2}.detail-grid p{font-size:14px}.detail-grid a{display:inline-block;margin-top:10px}.detail-grid small{display:block;font-size:11px;color:var(--muted);margin-top:15px}.back{border:0;background:none;font-size:12px;padding:0;text-decoration:underline;color:var(--wine)}@media(min-width:1450px){.editorial{min-height:660px}}@media(max-width:1000px){.workspace{padding:25px}.intro-note{display:none}.studio{grid-template-columns:1.25fr 1fr}.step{font-size:10px;gap:4px}.stage-footer>span{display:none}.stage-footer{justify-content:flex-end}.colour-note{gap:25px}.occasion{padding:14px}.occasion .symbol{margin-right:9px}.photo-caption h2{font-size:44px}}@media(max-width:720px){header{height:90px}.brand{font-size:29px}nav{display:none}.nav-cta{font-size:12px}.topline{font-size:10px}.intro{padding:30px 0 22px}h1{font-size:37px}.intro p{font-size:14px}.studio,.results-mode{display:flex;flex-direction:column}.workspace{padding:22px 18px}.steps{gap:8px}.step{font-size:11px;gap:5px}.step b{width:22px;height:22px}#stage h2{font-size:29px}.editorial,.results-mode .editorial{min-height:400px;position:relative;max-height:none}.photo-caption{bottom:28px;left:26px}.photo-caption h2{font-size:45px}.editorial>img{object-position:center 32%}.colour-note{grid-template-columns:1fr;gap:16px;padding:40px 0}.colour-note p{margin:0}.mini-palette{max-width:330px}.mini-palette div{height:45px}.about{padding:45px 0}.about h2{font-size:32px}footer{flex-wrap:wrap;gap:8px}footer p{width:100%;order:3;margin:0}.detail-grid{grid-template-columns:1fr}.detail-grid img{max-height:320px;object-fit:contain}.product img{height:200px}.occasion small{font-size:11px}.occasion strong{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the expanded colour collection easy to browse. */
.palettes{max-height:390px;overflow-y:auto;overscroll-behavior:contain;padding:3px 8px 3px 3px;scrollbar-color:#a78b8b #f6f0ec;scrollbar-width:thin}.palette{min-height:70px}.swatches{flex-shrink:0}.palettes:focus-visible{outline:2px solid var(--wine);outline-offset:3px}@media(max-width:720px){.palettes{max-height:360px}.palette small{font-size:12px}.palette strong{font-size:14px}}

.steps{gap:10px}.step{font-size:11px}.step b{flex-shrink:0}.look-mode{display:block}.look-mode>.editorial{display:none}.look-mode .workspace{padding:30px 38px}.look-mode .steps{justify-content:flex-start;gap:45px}.look-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.look-heading .eyebrow{display:block;margin-bottom:12px}.look-heading p{color:var(--muted);font-size:14px;margin:10px 0 0}.look-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:32px}.look-figure{margin:0;min-width:0}.outfit-image{display:block;width:100%;aspect-ratio:3/2;object-fit:contain;background:#e5e2df}.look-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.look-options button{padding:14px 12px;display:flex;align-items:center;gap:8px;text-align:left;border:1px solid var(--line);background:white;font-size:14px}.look-options button.selected{border-color:var(--wine);background:#faf4f3;box-shadow:inset 0 0 0 1px var(--wine)}.look-options span{font-size:11px;color:var(--muted)}.look-options b{margin-left:auto;color:var(--wine)}.look-figure figcaption{font-size:11px;color:var(--muted);padding:12px 0}.look-notes h3{font-size:29px;margin:9px 0 20px;line-height:1.2}.outfit-part{display:flex;align-items:center;gap:15px;padding:14px 0;border-top:1px solid var(--line)}.outfit-part i{display:block;flex-shrink:0;width:43px;height:55px;border:1px solid #0000000c;border-radius:2px}.outfit-part small{display:block;font-size:10px;letter-spacing:1.5px;color:var(--muted)}.outfit-part strong{display:block;font-size:15px;font-weight:500}.outfit-part p{font-size:12px;color:var(--muted);margin:3px 0 0}.look-notes .tip{margin-top:10px}.look-notes .tip p{margin:6px 0;font-size:13px}.look-note{font-size:12px;color:var(--muted)}.look-mode .stage-footer{justify-content:space-between}@media(max-width:1000px){.look-mode .steps{gap:25px}.look-layout{gap:22px;grid-template-columns:1.4fr 1fr}.steps .step{gap:4px;font-size:10px}.step b{width:21px;height:21px}}@media(max-width:720px){.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.steps .step{flex-direction:column;gap:6px;font-size:10px;line-height:1.3;text-align:center;justify-content:flex-start}.steps .step b{width:24px;height:24px}.look-mode .workspace{padding:22px 18px}.look-mode .steps{gap:3px}.look-heading{align-items:flex-start;flex-direction:column;gap:12px}.look-layout{grid-template-columns:1fr}.look-options button{padding:12px 9px;font-size:12px}.look-notes h3{font-size:27px}.look-heading .eyebrow{font-size:10px}.look-mode .stage-footer{justify-content:flex-end}}

@media(min-width:721px) and (max-width:950px){.look-layout{grid-template-columns:1fr}.look-notes{max-width:640px}.look-mode .stage-footer{justify-content:flex-end}}

.editorial .photo-caption{bottom:95px;right:25px}.slide-controls{position:absolute;z-index:3;bottom:25px;left:28px;right:28px;display:flex;align-items:center;justify-content:center;gap:7px;color:white}.slide-controls>button{border:1px solid #ffffff80;border-radius:50%;background:#24171450;color:white;width:38px;height:38px;padding:0;display:grid;place-items:center;font-size:18px;flex-shrink:0}.slide-controls>button:hover{background:#512533cc}.slide-dots{display:flex;align-items:center;justify-content:center;flex:1;gap:0}.slide-dots button{border:0;background:none;width:28px;height:38px;padding:0;display:grid;place-items:center}.slide-dots button span{display:block;width:6px;height:6px;border:1px solid white;border-radius:5px;transition:width .2s;background:transparent}.slide-dots button[aria-current=true] span{width:19px;background:white}.slide-controls .slide-pause{font-size:14px;margin-left:4px}.editorial:after{top:30%}@media(max-width:1000px){.slide-controls{left:15px;right:15px;gap:3px}.slide-dots button{width:22px}.slide-controls>button{width:32px;height:36px}.editorial .photo-caption{left:25px}.editorial .photo-caption h2{font-size:38px}}@media(max-width:720px){.editorial .photo-caption{bottom:85px}.editorial .photo-caption h2{font-size:35px}.slide-controls{left:25px;right:25px;bottom:22px}.slide-dots button{width:32px}.slide-controls>button{width:40px;height:40px}}@media(prefers-reduced-motion:reduce){.slide-dots button span{transition:none}}

.scene-error{position:absolute;left:25px;right:25px;top:26%;z-index:2;text-align:center;color:white;font-size:15px;line-height:1.6}.scene-error[hidden]{display:none}
.slide-dots{min-width:0}.slide-dots button{flex:1;min-width:16px;max-width:32px}

.colour-count{display:flex;gap:10px;margin-bottom:16px}.colour-count button{flex:1;border:1px solid var(--line);background:white;padding:11px 14px;text-align:left;color:var(--ink);border-radius:3px}.colour-count button.selected{border-color:var(--wine);background:#faf4f3;box-shadow:inset 0 0 0 1px var(--wine);color:var(--wine)}.colour-count small{display:block;font-size:11px;color:var(--muted)}.swatches{width:102px}.swatches i{flex:1;min-width:0}

.work-edit{margin:22px 0 28px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.work-edit h3{font-size:26px;line-height:1.2;margin:8px 0}.work-edit>p{font-size:13px;color:var(--muted);margin:10px 0 16px}.work-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:480px;overflow-y:auto;padding:3px 7px 3px 3px;scrollbar-width:thin;scrollbar-color:#a78b8b #f6f0ec}.work-look{padding:0;background:var(--paper);border:1px solid var(--line);text-align:left;color:var(--ink);min-width:0}.work-look.selected{outline:2px solid var(--wine);outline-offset:-2px}.work-look img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.work-look-body{display:flex;flex-direction:column;gap:5px;padding:12px}.work-look-body>small{font-size:10px;color:var(--muted)}.work-look-body>strong{font:19px/1.2 'Playfair Display',Georgia,serif}.work-look-body>span{font-size:11px}.work-look-body>b{font-size:11px;font-weight:500;color:var(--wine);margin-top:6px}.work-colours{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.work-colours i{height:13px;width:13px;border-radius:50%;border:1px solid #0001}.work-colours span{width:100%;font-size:10px;color:var(--muted)}.work-edit .work-edit-note{font-size:11px;margin-bottom:0}@media(max-width:420px){.work-edit-grid{gap:8px}.work-look-body{padding:9px}.work-look-body>strong{font-size:17px}}

.selected-style{display:flex;gap:14px;align-items:center;background:#f7f2ed;padding:14px;margin:18px 0}.selected-style img{width:110px;aspect-ratio:3/2;object-fit:cover}.selected-style strong{display:block;font:20px/1.25 'Playfair Display',Georgia,serif;margin-top:4px}.selected-style p{font-size:12px;color:var(--muted);margin:6px 0}.selected-style .eyebrow{font-size:9px}@media(max-width:420px){.selected-style{align-items:flex-start}.selected-style img{width:75px}}
