.beads-header .active { color:var(--pink); }
.beads-hero { padding:clamp(90px,11vw,160px) clamp(24px,8vw,128px); background:var(--ink); color:#fff; position:relative; overflow:hidden; }
.beads-hero:after { content:""; position:absolute; width:420px; height:420px; right:-100px; bottom:-230px; border:70px solid var(--pink); border-radius:50%; opacity:.55; }
.beads-hero h1 { font-size:clamp(58px,8vw,118px); position:relative; z-index:1; }
.beads-hero>p:last-child { position:relative; z-index:1; max-width:610px; margin:34px 0 0; font-size:19px; line-height:1.7; color:#d8cfd4; }
.catalog { padding:clamp(80px,10vw,150px) clamp(24px,8vw,128px); }
.catalog-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:56px; }
.catalog-heading h2 { font-size:clamp(52px,6vw,90px); }
.catalog-heading>p { max-width:410px; color:#756970; line-height:1.7; }
.product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.product-card { background:#fff; cursor:pointer; outline:none; transition:transform .2s ease,box-shadow .2s ease; }
.product-card:hover,.product-card:focus-visible { transform:translateY(-6px); box-shadow:0 18px 45px rgba(41,26,34,.14); }
.product-photo { aspect-ratio:1; position:relative; overflow:hidden; }
.product-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.product-card:hover .product-photo img { transform:scale(1.035); }
.product-photo span { position:absolute; left:14px; bottom:14px; background:var(--ink); color:#fff; padding:10px 13px; font-size:12px; font-weight:700; }
.product-info { padding:24px; display:flex; align-items:start; justify-content:space-between; gap:20px; }
.product-info h3 { font-family:Georgia,serif; font-size:25px; font-weight:400; margin:0 0 9px; }
.product-info p { color:#766a70; font-size:14px; line-height:1.55; margin:0; }
.product-info strong { white-space:nowrap; color:var(--pink); }
.request-section { padding:clamp(80px,10vw,150px) clamp(24px,8vw,128px); background:var(--pink); color:#fff; display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(50px,8vw,120px); }
.request-section h2 { font-size:clamp(50px,6vw,88px); }
.request-section h2 em { color:#6e183d; }
.request-section>div>p:last-child { max-width:500px; line-height:1.7; }
.request-panel { background:#fff; color:var(--ink); padding:clamp(26px,4vw,54px); }
form { display:grid; gap:20px; }
form label { display:grid; gap:8px; font-size:14px; font-weight:700; }
form label span,form small { font-weight:400; color:#81747a; }
input,select,textarea { width:100%; border:1px solid #d9cfd3; border-radius:0; background:#fff; padding:13px 14px; color:var(--ink); font:inherit; font-size:16px; }
textarea { resize:vertical; }
input:focus,select:focus,textarea:focus { outline:2px solid var(--pink); outline-offset:1px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
form .button { border:0; cursor:pointer; justify-self:start; }
.notice { padding:16px 18px; margin-bottom:24px; line-height:1.55; }
.notice.success { background:#e8f6ec; color:#175d2b; }
.notice.error { background:#fff0f0; color:#8a1f28; }
.hidden-field { position:absolute; left:-10000px; }
@media(max-width:900px) {
  .product-grid { grid-template-columns:1fr 1fr; }
  .request-section { grid-template-columns:1fr; }
}
@media(max-width:620px) {
  .catalog-heading { align-items:start; flex-direction:column; }
  .product-grid,.form-row { grid-template-columns:1fr; }
  .beads-hero { padding-top:80px; }
  .product-info { padding:20px; }
}
