@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:#172f49;--accent:#bc8b6c;--cream:#fcf8f2;--line:#e8dfd5;--muted:#66717a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:DM Sans,Arial,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 48px));margin:auto}.announcement{background:var(--ink);color:white;text-align:center;font-size:11px;letter-spacing:.11em;text-transform:uppercase;padding:10px 16px}.site-header{background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:86px;gap:24px}.wordmark{display:flex;flex-direction:column;line-height:1}.wordmark img{max-height:60px;max-width:200px;object-fit:contain}.wordmark strong{font-family:Playfair Display,Georgia,serif;font-size:28px;font-weight:500;letter-spacing:-.055em}.wordmark-small{font-size:9px;letter-spacing:.25em;text-transform:uppercase;margin-bottom:5px;color:var(--accent)}.desktop-nav{gap:32px;font-size:13px;font-weight:600}.desktop-nav,.desktop-nav a{display:flex;align-items:center}.desktop-nav a{gap:5px}.back-link:hover,.desktop-nav a:hover{color:var(--accent)}.cart-link{display:flex;align-items:center;gap:8px}.cart-link span{background:var(--ink);color:white;border-radius:50%;min-width:20px;height:20px;display:grid;place-items:center;font-size:11px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Playfair Display,Georgia,serif;font-weight:500}h1{font-size:clamp(42px,5vw,72px);line-height:1.07;letter-spacing:-.04em}h2{font-size:clamp(32px,3.7vw,48px);letter-spacing:-.035em}h3{font-size:23px}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 25px;font-size:13px;font-weight:700;min-height:54px}.button-primary{background:var(--ink);color:white}.button-primary:hover{background:#284665}.button-light{background:white;color:var(--ink)}.button:disabled{opacity:.5;cursor:not-allowed}.wide{width:100%}.hero{background:#f6eee6;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1fr 1fr;min-height:580px}.hero-copy{padding:100px 0 80px;position:relative;z-index:1}.hero h1{margin:24px 0}.hero h1 em{color:var(--accent);font-weight:400}.hero-copy>p{max-width:460px;color:#5b6063;line-height:1.75;font-size:17px;margin-bottom:32px}.hero-note{font-size:12px;color:#6c6a65;margin-top:28px}.hero-art{position:relative;display:grid;place-items:center}.hero-circle{width:min(430px,80%);aspect-ratio:1;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:#f6eee6;transform:rotate(-10deg);box-shadow:35px 35px 0 #e8d9cc}.hero-circle span{font-family:Playfair Display,Georgia,serif;font-size:clamp(55px,7vw,100px);line-height:.88;text-align:center;letter-spacing:-.07em}.hero-circle i{color:#d7af8f}.star{position:absolute;color:var(--accent);font-size:55px}.star-a{top:17%;right:7%}.star-b{bottom:17%;left:5%;font-size:35px}.feature-strip{background:white;border-bottom:1px solid var(--line)}.strip-inner{display:flex;justify-content:space-around;gap:20px;padding:22px 0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catalog-section{padding:90px 0 100px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-top h2{margin:12px 0 8px}.section-top p{color:var(--muted)}.search{border:1px solid var(--line);background:white;padding:15px 18px;min-width:290px;color:var(--ink);outline:none}.search:focus,input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none}.chips{display:flex;gap:8px;overflow:auto;padding:24px 0 30px}.chip{white-space:nowrap;border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 18px;font-size:12px}.chip.active,.chip:hover{background:var(--ink);color:white;border-color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.product-card{background:white;display:block}.product-photo{height:280px;background:#eee2d7;display:grid;place-items:center;overflow:hidden}.detail-photo img,.mini-photo img,.product-photo img{width:100%;height:100%;object-fit:cover}.photo-symbol{font-family:Georgia,serif;color:#c5a68c;font-size:100px}.product-card:nth-child(3n+2) .product-photo{background:#d9e0e3}.product-card:nth-child(3n) .product-photo{background:#eadbd8}.product-info{padding:22px}.product-info h3{font-size:21px;margin:7px 0 12px;min-height:50px}.product-info p{font-weight:700;margin:0}.product-cta{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;display:flex;justify-content:space-between;font-size:12px;font-weight:700}.product-card:hover .product-cta{color:var(--accent)}.empty-state{padding:70px 25px;text-align:center;background:white;color:var(--muted)}.empty-state a{text-decoration:underline}.steps{background:#eae2d9;padding:95px 0}.steps h2{margin:12px 0 40px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.step-grid>div{border-top:1px solid #b7ada1;padding-top:25px}.step-grid b{color:var(--accent);font-size:13px}.step-grid h3{margin:16px 0 10px}.step-grid p{max-width:280px;color:#596571;line-height:1.7}.closing{background:var(--ink);color:white;text-align:center;padding:85px 0}.closing h2{max-width:580px;margin:16px auto 30px}.footer{background:#10283f;color:#f5f2ee;padding:65px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-mark{font-family:Playfair Display,Georgia,serif;font-size:29px}.footer p{color:#bac5cf;line-height:1.8;margin:15px 0}.footer strong:not(.footer-mark){font-size:12px;text-transform:uppercase;letter-spacing:.1em}.page-main{min-height:65vh;padding:55px 0 100px}.breadcrumbs{font-size:12px;color:var(--muted);padding-bottom:30px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.detail-photo{height:600px;background:#eee2d7;display:grid;place-items:center;overflow:hidden}.detail-photo>span{font-family:Georgia,serif;font-size:160px;color:#c5a68c}.detail-content h1{font-size:50px;margin:10px 0 13px}.detail-price{font-size:23px;font-weight:700}.detail-description{line-height:1.75;color:var(--muted);margin:24px 0}.notice{background:#efe8dd;padding:15px 18px;color:#5c5a58;line-height:1.5;font-size:13px}.field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700;margin:18px 0}.field input,.field select,.field textarea{background:white;border:1px solid var(--line);border-radius:0;color:var(--ink);padding:14px;width:100%;min-height:48px;font-weight:400}.field input[type=file]{padding:12px}.field small{color:green}.quantity-field input{max-width:120px}.fine-print{font-size:12px;color:var(--muted);line-height:1.6;margin-top:14px}.error{background:#f9e4e4;color:#a12828;padding:12px;font-size:13px}.cart-layout,.checkout-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:60px}.cart-layout h1,.checkout-layout h1{font-size:50px;margin:10px 0 30px}.cart-item{display:grid;grid-template-columns:100px 1fr auto;gap:20px;align-items:start;border-bottom:1px solid var(--line);padding:24px 0}.mini-photo{width:100px;height:100px;background:#eee2d7;display:grid;place-items:center;font-size:38px;color:var(--accent)}.cart-item h3{margin:0 0 9px;font-size:20px}.cart-item p{margin:4px 0;color:var(--muted);font-size:12px}.text-button{border:0;background:none;padding:5px 0;text-decoration:underline;color:var(--ink);font-size:12px}.summary{background:white;padding:30px;align-self:start;position:sticky;top:115px}.summary h2{font-size:27px;margin:0 0 25px}.summary p{font-size:12px;line-height:1.7;color:var(--muted);margin:22px 0}.summary-row{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.summary-row strong{white-space:nowrap}.summary-row.total{font-size:17px;border-bottom:0;margin-top:10px}.back-link{display:block;text-align:center;margin-top:18px;font-size:12px;text-decoration:underline}.checkout-form h2{font-size:28px;margin:40px 0 10px}.checkout-layout>div>p{color:var(--muted);line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.span-2{grid-column:span 2}.choice-row{display:flex;gap:12px}.choice{background:white;border:1px solid var(--line);padding:16px 25px;display:flex;gap:9px;align-items:center;cursor:pointer}.choice.selected{border-color:var(--ink)}.order-page{max-width:750px}.order-page h1{margin:12px 0 18px}.order-page>p{line-height:1.7;color:var(--muted)}.order-panel{background:white;padding:28px;margin:30px 0}.admin-layout{min-height:100vh;background:#f5f5f2}.admin-header{background:var(--ink);color:white;padding:24px 0}.admin-header .container{display:flex;align-items:center;justify-content:space-between}.admin-title{font-family:Playfair Display,Georgia,serif;font-size:26px}.admin-main{padding:50px 0 100px}.admin-tabs{display:flex;gap:5px;border-bottom:1px solid #d8d8d2;margin:25px 0}.admin-tab{border:0;background:transparent;padding:15px 20px;color:var(--muted)}.admin-tab.active{border-bottom:2px solid var(--ink);color:var(--ink);font-weight:700}.admin-card{background:white;border:1px solid #e5e5df;padding:24px;margin:18px 0}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.admin-grid .admin-card{margin:0}.admin-card h3{font-size:20px;margin:0 0 10px}.admin-card p{font-size:13px;color:var(--muted);line-height:1.55}.admin-table{width:100%;border-collapse:collapse;background:white}.admin-table td,.admin-table th{padding:15px;border-bottom:1px solid #eee;text-align:left;font-size:13px;vertical-align:top}.admin-table th{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.admin-table button{border:1px solid var(--line);background:white;padding:8px 10px;margin:2px;font-size:12px}.admin-table button:hover{border-color:var(--ink)}.badge{display:inline-block;background:#eee8dc;padding:5px 8px;font-size:11px}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.admin-form .button{margin-top:20px}.admin-small{font-size:12px;color:var(--muted)}.login-panel{max-width:420px;margin:10vh auto;padding:40px;background:white;border:1px solid var(--line)}.login-panel h1{font-size:38px}.json-textarea{font-family:monospace!important;min-height:120px}.admin-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-actions button{border:1px solid var(--line);background:white;padding:8px 11px;font-size:12px}.admin-actions button:hover{border-color:var(--ink)}.hero-circle .badge-accent{color:#d7af8f}@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{gap:35px}.detail-photo{height:500px}.cart-layout,.checkout-layout{gap:28px}.hero-copy{padding:80px 0}.hero-inner{min-height:520px}}@media(max-width:650px){.container{width:min(100% - 30px,1180px)}.announcement{font-size:9px}.header-inner{min-height:70px}.wordmark strong{font-size:23px}.desktop-nav{display:none}.hero-inner{grid-template-columns:1fr;min-height:0}.hero-copy{padding:65px 0 35px}.hero h1{font-size:52px}.hero-art{height:280px}.hero-circle{width:240px;box-shadow:18px 18px 0 #e8d9cc}.hero-circle span{font-size:58px}.star-a{top:8%}.star-b{bottom:6%}.strip-inner{flex-direction:column;text-align:center;gap:10px;font-size:10px}.catalog-section,.steps{padding:65px 0}.section-top{display:block}.search{width:100%;min-width:0;margin-top:12px}.product-grid{gap:11px}.product-photo{height:185px}.product-info{padding:15px}.product-info h3{font-size:17px;min-height:46px}.product-info .eyebrow{font-size:9px}.step-grid{grid-template-columns:1fr;gap:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:span 2}.cart-layout,.checkout-layout,.detail-grid{grid-template-columns:1fr}.detail-photo{height:360px}.detail-content h1{font-size:42px}.page-main{padding:25px 0 70px}.cart-layout h1,.checkout-layout h1{font-size:42px}.summary{position:static}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.cart-item{grid-template-columns:70px 1fr;gap:12px}.cart-item>strong{grid-column:2}.mini-photo{width:70px;height:70px}.admin-form,.admin-grid{grid-template-columns:1fr}.admin-table{display:block}.admin-table,.admin-tabs{overflow:auto}.admin-tab{white-space:nowrap}}