@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Lora:wght@400;500&display=swap');
:root{--cream:#fdf9ee;--paper:#fffcf6;--ink:#43333c;--muted:#75666d;--rose:#a45470;--pink:#f3dbe3;--line:#dfd1d3}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.announcement{text-align:center;background:var(--pink);padding:9px 18px;font-size:12px}header{background:var(--cream);padding:14px 5% 0}.brand{display:flex;flex-direction:column;align-items:center;max-width:520px;margin:auto;padding-bottom:28px}.brand img{width:480px;height:225px;object-fit:contain}.brand span{font-size:20px;letter-spacing:2px;margin-top:-12px}nav{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:17px 0}.nav-links{display:flex;gap:30px;font-size:13px}.nav-links a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.bag-button{background:none;border:1px solid #c5adb7;border-radius:5px;padding:8px 17px;color:var(--ink);font-size:13px}.bag-button:hover{background:var(--pink)}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding:50px 7% 55px;background:#f4e9e9;border-block:1px solid var(--line)}.hero-copy{max-width:530px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:1.5px;font-weight:600;color:var(--rose)}h1,h2{font-family:Lora,Georgia,serif;font-weight:400;line-height:1.18;letter-spacing:-1.1px}h1{font-size:clamp(37px,4.2vw,61px);margin:20px 0 24px}.hero p{font-size:16px;max-width:420px;color:#6e5b65;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:13px 23px;border:1px solid var(--rose);border-radius:5px;background:var(--rose);color:white;font-size:13px;font-weight:500;margin-top:20px}.button:hover{background:#8b405b;border-color:#8b405b}.button.secondary{background:transparent;color:var(--ink);border-color:#baa6ad}.button.secondary:hover{background:var(--pink)}.hero-image{height:365px;background:var(--cream);border:1px solid #d1bdc3;border-radius:85px 85px 9px 9px;position:relative;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:contain;padding:15px 25px 48px}.image-caption{position:absolute;bottom:0;left:0;right:0;padding:6px 20px;display:flex;justify-content:center;align-items:center;gap:10px;background:#fdf9eef2;font-size:12px}.mascot{width:67px;height:92px;display:block;position:relative;overflow:hidden;flex-shrink:0}.mascot img{position:absolute;max-width:none;width:245px;height:auto;left:-18px;top:-10px}.small-mascot{width:30px;height:43px}.small-mascot img{width:112px;left:-9px;top:-5px}.collections-section{padding:50px 5%;display:grid;grid-template-columns:1fr 1.6fr;gap:45px;border-bottom:1px solid var(--line)}h2{font-size:35px;margin:12px 0 18px}.collection-links{display:grid;grid-template-columns:repeat(2,1fr);column-gap:30px;align-content:center}.collection-links a{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.collection-links a:hover{color:var(--rose)}.catalog{padding:65px 5%}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.catalog-note{font-size:12px;color:var(--muted);max-width:680px;margin:4px 0 28px}.catalog-tools{display:flex;gap:20px;justify-content:space-between;align-items:end}.search-label{width:min(450px,65%)}.catalog-tools label>span{display:block;font-size:12px;margin-bottom:6px}input[type=search],select{border:1px solid #cdbcc3;background:white;color:var(--ink);padding:11px 13px;border-radius:4px;width:100%;min-height:44px}.sort-label{min-width:180px}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 19px}.filters button{border:1px solid var(--line);border-radius:5px;background:transparent;padding:8px 16px;color:var(--ink);font-size:12px}.filters button.active{border-color:var(--rose);background:#f4e3e9;color:#803b57}.results-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:22px;font-size:12px;color:var(--muted)}.results-row label{display:flex;gap:7px;align-items:center}.results-row input{accent-color:var(--rose)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 23px}.product{position:relative;min-width:0}.product-main{border:0;background:transparent;padding:0;text-align:left;color:inherit;width:100%;display:block}.product-image{height:275px;display:block;position:relative;background:white;border:1px solid #e4dbd8;border-radius:7px;overflow:hidden}.product-image img{height:100%;width:100%;object-fit:contain;padding:12px;transition:transform .2s}.product-main:hover img{transform:scale(1.035)}.product-name{display:block;font-size:14px;line-height:1.5;margin:13px 0 6px;font-weight:500}.product-bottom{display:flex;justify-content:space-between;gap:10px;font-size:13px}.product-category{color:var(--muted);font-size:11px}.sold-out{position:absolute;top:10px;left:10px;background:var(--paper);padding:3px 8px;font-size:10px;border:1px solid var(--line);border-radius:3px}.load-more{margin:35px auto 0;display:flex}.load-more[hidden]{display:none}.empty-results{grid-column:1/-1;padding:35px 0;color:var(--muted)}.about{margin:0 5% 60px;padding:45px 7%;display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center;background:var(--cream);border:1px solid var(--line);border-radius:10px}.about-mark{text-align:center}.about-mark img{width:100%}.about-mark span{font-size:16px;letter-spacing:1px}.about p{color:var(--muted);font-size:14px;line-height:1.9}.text-link{font-size:13px;color:var(--rose);border-bottom:1px solid #b07a8c;padding-bottom:4px;display:inline-block;margin-top:12px}footer{padding:25px 5% 20px;border-top:1px solid var(--line);background:#f2e6e7;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand strong{display:block;font-family:Georgia,serif;font-size:25px;font-weight:400}.footer-brand div>span{font-size:11px;letter-spacing:.7px}.footer-links{display:flex;gap:20px;font-size:12px}footer p{font-size:10px;color:var(--muted)}dialog{width:min(1000px,94vw);max-height:90vh;border:1px solid #d0bcc4;border-radius:10px;background:var(--paper);color:var(--ink);padding:32px}dialog::backdrop{background:#35232cc4}.close{position:sticky;top:0;float:right;width:36px;height:36px;background:var(--cream);border:1px solid var(--line);border-radius:50%;font-size:23px;z-index:2;color:var(--ink)}.detail{clear:both;display:grid;grid-template-columns:1.1fr 1fr;gap:35px;padding-top:12px}.main-photo{width:100%;height:400px;object-fit:contain;background:white;border:1px solid var(--line);border-radius:5px}.thumbnails{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.thumbnails button{border:1px solid var(--line);background:white;border-radius:4px;padding:3px}.thumbnails button.selected{border:2px solid var(--rose)}.thumbnails img{height:55px;width:55px;object-fit:contain}.detail h2{font-size:29px;margin-top:14px}.detail-description{font-size:14px;line-height:1.9}.detail-price{font-size:20px}.detail-options{font-size:12px;color:var(--muted);margin-top:15px}.detail .button{width:100%}.detail-note{font-size:11px;color:var(--muted);margin-top:20px}.bag-row{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.bag-row img{width:65px;height:75px;object-fit:contain;background:white}.bag-row div{flex:1}.bag-row strong{font-size:14px;font-weight:500;display:block}.bag-row a,.remove{font-size:12px;color:var(--rose);text-decoration:underline;text-underline-offset:3px}.remove{border:0;background:none;padding:0}.bag-total{display:flex;justify-content:space-between;font-size:18px;margin-top:25px}.bag-note{font-size:13px;color:var(--muted)}
@media(max-width:1000px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-image{height:245px}.hero{gap:5%;padding:40px 5%}.hero-image{height:330px}.about{gap:35px;padding:35px 5%}footer{flex-wrap:wrap;gap:20px}.collections-section{gap:30px}h2{font-size:30px}}
@media(max-width:700px){header{padding-top:8px}.brand{padding-bottom:22px}.brand img{width:380px;height:190px}.brand span{font-size:17px;margin-top:-9px}nav{flex-wrap:wrap;gap:16px;justify-content:center;padding:13px 0}.nav-links{gap:18px;font-size:12px;flex-wrap:wrap;justify-content:center}.bag-button{font-size:12px;padding:6px 13px}.hero{grid-template-columns:1fr;padding:32px 7%;gap:30px}.hero h1{font-size:42px}.hero p{font-size:15px}.hero-image{height:300px;width:100%;max-width:430px;justify-self:center}.collections-section{grid-template-columns:1fr;padding:35px 5%;gap:4px}.collection-links{gap:0 25px}.catalog{padding:40px 5%}.catalog-tools{gap:12px}.sort-label{min-width:150px}.search-label{width:auto;flex:1}.catalog-tools input,.catalog-tools select{font-size:13px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 15px}.product-image{height:225px}.product-name{font-size:13px}.filters{gap:7px}.filters button{padding:7px 11px;font-size:11px}.results-row{font-size:11px;gap:10px}.section-heading .mascot{transform:scale(.85);transform-origin:right center}.about{grid-template-columns:1fr;gap:25px;padding:25px 7%;margin-bottom:40px}.about-mark{max-width:330px;margin:auto}.about-mark span{font-size:14px}.about h2{font-size:30px}footer{padding:22px 5%;gap:20px}.footer-links{gap:16px}.footer-brand .mascot{transform:scale(.75);transform-origin:left center;width:50px}.detail{grid-template-columns:1fr;gap:25px}.main-photo{height:300px}dialog{padding:20px}.detail h2{font-size:25px}.thumbnails img{height:45px;width:45px}.bag-row{gap:10px}.bag-row strong{font-size:12px}.bag-row img{width:45px;height:60px}}
@media(max-width:390px){.product-image{height:185px}.hero h1{font-size:36px}.nav-links{gap:12px}.sort-label{min-width:135px}.brand img{height:170px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-image img{transition:none}}
