@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--ink:#22251f;--paper:#fbfaf7;--line:#dcdcd2;--accent:#5a2e37;--muted:#62655c;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #a27129;outline-offset:5px}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.045em}em{font-weight:400}h2{font-size:clamp(2.4rem,4.2vw,4rem)}.announcement{text-align:center;background:var(--ink);color:#fff;font-size:12px;letter-spacing:.22em;padding:9px 20px}.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 5.5%;border-bottom:1px solid var(--line)}.wordmark{font:28px/1 var(--serif);letter-spacing:-1.5px}.wordmark span{display:block;font:9px/1.5 'DM Sans',sans-serif;letter-spacing:.17em;margin-top:10px}.header nav{display:flex;gap:36px;font-size:14px}.nav-shop{font-size:14px;display:flex;gap:15px;align-items:center}.small-dot{height:7px;width:7px;border-radius:100%;background:var(--ink)}.product{display:grid;grid-template-columns:1.12fr 1fr;gap:7%;max-width:1440px;padding:48px 5.5% 66px;margin:auto}.main-image{position:relative;background:#ece8df;overflow:hidden}.main-image>img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.image-tag{position:absolute;left:20px;top:20px;background:var(--paper);font-size:10px;letter-spacing:.13em;padding:9px 13px}.zoom{position:absolute;bottom:18px;right:18px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:var(--paper)}svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.gallery-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:17px}.gallery-bottom>p{font-family:var(--serif);font-style:italic;text-align:right;font-size:17px;line-height:1.4}.thumbnails{display:flex;gap:10px}.thumb{border:1px solid transparent;padding:3px;background:transparent;width:64px;opacity:.66}.thumb.selected{border-color:var(--ink);opacity:1}.thumb img{width:56px;height:56px;object-fit:cover}.product-info{padding-top:17px}.eyebrow{font-size:11px;letter-spacing:.15em;line-height:1.5;font-weight:500}.product-info>.eyebrow{display:flex;justify-content:space-between;gap:10px}.product-info>.eyebrow span:last-child{color:var(--muted)}h1{font-size:clamp(3.4rem,5.2vw,5.1rem);margin:27px 0 24px}h1 em{color:var(--accent)}.intro{font-size:16px;line-height:1.75;max-width:400px;color:var(--muted)}.price-line{display:flex;align-items:center;gap:19px;margin:27px 0 22px}.price{font-size:28px;letter-spacing:-1px}.price-line>span:last-child{font-size:12px;color:var(--muted)}.rule{height:1px;background:var(--line);margin-bottom:20px}.colour-label{font-size:13px;display:flex;gap:15px}.colour-label strong{font-weight:500}.colour-row{display:flex;align-items:center;gap:12px;margin:12px 0 23px;font-size:12px;color:var(--muted)}.swatch{display:block;width:26px;height:26px;background:#1d1c1a;border-radius:50%;outline:1px solid #777;outline-offset:3px;margin:3px}.buy{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ink);border:1px solid var(--ink);color:white;padding:17px 22px;font-size:15px;transition:background .2s}.buy:hover{background:var(--accent);border-color:var(--accent)}.buy span{font-size:14px;opacity:.88}.checkout-note{font-size:11px;color:var(--muted);text-align:center;margin:10px 0 22px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--line);padding-top:23px}.benefits>div{display:flex;gap:10px;align-items:center;font-size:11px;line-height:1.5}.benefits svg{width:25px;height:25px;flex-shrink:0}.statement{background:#efeee8;padding:49px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:20px}.statement>span{font-size:10px;letter-spacing:.17em}.statement p{text-align:center;font:36px/1.25 var(--serif);letter-spacing:-1px}.details{max-width:1360px;margin:auto;padding:100px 5.5%;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.detail-copy>h2{margin:20px 0}.detail-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:28px;max-width:390px}.feature{display:flex;gap:23px;padding:19px 0;border-top:1px solid var(--line)}.feature>span{font:15px var(--serif);padding-top:4px;color:#757566}.feature h3{font-weight:500;font-size:16px;margin-bottom:6px}.feature p{font-size:14px;line-height:1.6;color:var(--muted)}.detail-photo{background:#eeede7;padding:24px}.detail-photo p{text-align:center;font-size:10px;letter-spacing:.15em;margin-top:23px}.occasion{padding:80px 5.5%;background:var(--ink);color:#f7f5ee}.occasion-heading{display:flex;align-items:flex-start;gap:8%;max-width:1160px;margin:auto}.occasion-heading .eyebrow{padding-top:12px;min-width:28%;color:#c4c6b9}.occasion-heading h2{font-size:48px}.occasion-items{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;max-width:1160px;margin:55px auto 0;padding-top:32px;border-top:1px solid #55584e}.occasion-items article>span{font-size:10px;letter-spacing:.16em;color:#c2c5b8}.occasion-items h3{font:25px/1.35 var(--serif);margin:19px 0 15px}.occasion-items p{font-size:14px;color:#c6c8bf}.faq{padding:95px 5.5%;max-width:1360px;margin:auto;display:grid;grid-template-columns:1fr 1.25fr;gap:12%}.faq h2{margin-top:20px}.questions details{border-top:1px solid var(--line);padding:20px 0}.questions details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:22px;line-height:1}details[open] summary:after{content:'−'}details p{padding-top:14px;color:var(--muted);font-size:14px;max-width:520px}.closing{padding:65px 24px 75px;text-align:center;background:#efeee8}.closing h2{margin:22px 0 28px}.closing .buy{max-width:340px;margin:auto}footer{padding:44px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer p,footer>a:not(.wordmark),footer>span{font-size:12px;color:var(--muted)}footer>.wordmark{font-size:25px}.mobile-buy{display:none}dialog{border:0;background:var(--paper);color:var(--ink);padding:48px;max-width:min(540px,calc(100% - 30px));box-shadow:0 20px 120px #0004}dialog::backdrop{background:#151712b8;backdrop-filter:blur(4px)}dialog h2{font-size:38px;margin:23px 0}dialog p:not(.eyebrow){color:var(--muted)}dialog .buy{margin-top:26px;justify-content:center}.close-dialog{position:absolute;top:12px;right:16px;font-size:28px;border:0;background:none;padding:4px 10px}#image-dialog{padding:0;max-width:min(85vh,95vw);overflow:visible}#image-dialog>.close-dialog{background:white;border-radius:50%;z-index:1}#image-dialog img{max-height:85vh;object-fit:contain}.skip{position:fixed;left:10px;top:-80px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}
@media(min-width:1450px){.header,footer{padding-left:max(5.5%,calc((100vw - 1280px)/2));padding-right:max(5.5%,calc((100vw - 1280px)/2))}}
@media(max-width:1050px){.product{gap:5%;padding-top:30px}h1{font-size:54px}.product-info{padding-top:0}.benefits>div{display:block}.benefits svg{margin-bottom:5px}.price-line{gap:12px}.price-line>span:last-child{font-size:11px}.details{gap:7%;padding-top:70px;padding-bottom:70px}footer{flex-wrap:wrap}footer p{display:none}}
@media(max-width:720px){body{padding-bottom:78px}.announcement{font-size:10px;padding:8px 12px}.header{padding:20px 6%}.wordmark{font-size:25px}.header nav{display:none}.nav-shop{font-size:12px}.product{grid-template-columns:1fr;padding:20px 6% 40px;gap:32px}.main-image>img{aspect-ratio:1.06}.product-info>.eyebrow{font-size:10px}h1{font-size:clamp(44px,10.8vw,66px);margin:20px 0}.intro{max-width:none}.price-line{margin-top:22px}.price-line>span:last-child{font-size:12px}.checkout-note{font-size:12px}.benefits>div{display:flex;font-size:11px;gap:9px}.statement{padding:35px 6%}.statement>span{display:none}.statement p{font-size:32px;width:100%}.details{grid-template-columns:1fr;gap:30px;padding:55px 6%}.detail-copy>p:not(.eyebrow){max-width:none}.detail-photo{padding:15px}.occasion{padding:48px 6%}.occasion-heading{display:block}.occasion-heading .eyebrow{padding:0;margin-bottom:20px}.occasion-heading h2{font-size:39px}.occasion-items{grid-template-columns:1fr;gap:30px;margin-top:30px;padding-top:27px}.occasion-items h3{margin:10px 0}.occasion-items article{border-bottom:1px solid #55584e;padding-bottom:26px}.occasion-items article:last-child{border-bottom:0;padding-bottom:0}.faq{grid-template-columns:1fr;padding:55px 6%;gap:30px}.closing{padding:45px 6%}.closing h2{font-size:38px}footer{padding:35px 6%;gap:25px}footer>a:not(.wordmark){max-width:130px;text-align:right}footer>span{width:100%;font-size:11px}.mobile-buy{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:5;background:var(--paper);border-top:1px solid var(--line);padding:12px 6% calc(12px + env(safe-area-inset-bottom));gap:15px;justify-content:space-between;align-items:center}.mobile-buy>span{font-size:11px}.mobile-buy strong{display:block;font-size:18px;line-height:1.2;font-weight:500}.mobile-buy button{background:var(--ink);color:white;padding:12px 24px;border:0;font-size:14px}dialog{padding:36px 25px}dialog h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
