/* Warm metal and ivory, matching the actual PSynth 1.5 panel. */
.ps15-product { --ps15-accent: #d6b883; }
.ps15-hero { display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:center;padding-block:70px 42px; }
.ps15-hero h1 { font-size:clamp(54px,7vw,104px);line-height:1;letter-spacing:-.055em;margin:20px 0 28px; }
.ps15-hero h1 span { color:var(--ps15-accent); }
.ps15-tags { display:flex;gap:12px 24px;flex-wrap:wrap;font-size:.8rem;margin:24px 0;color:var(--muted); }
.ps15-panel { margin:0;min-width:0; }
.ps15-panel img { display:block;width:100%;height:auto;border:1px solid #56534c;box-shadow:0 18px 70px #0005; }
.ps15-price { margin-top:28px;border-block-start:1px solid #8885;padding-top:20px; }
.ps15-price>span { display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em; }
.ps15-price>strong { display:block;font-size:clamp(32px,4vw,48px);line-height:1.3;margin:8px 0 14px; }
.ps15-price p { max-width:54ch;font-size:.85rem;line-height:1.7; }
.ps15-feature-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px; }
.ps15-feature-grid article { border-block-start:1px solid #8885;padding-top:20px;min-width:0; }
.ps15-feature-grid h2 { font-size:1.25rem;line-height:1.4;margin:16px 0; }
.ps15-feature-grid p,.ps15-start p { line-height:1.8; }
.ps15-start { display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,6vw,100px); }
.ps15-note { border:1px solid #8885;padding:clamp(22px,4vw,42px);align-self:start; }
.ps15-policy { display:flex;flex-wrap:wrap;gap:16px 28px;padding-block:28px 45px;font-size:.82rem;border-block-start:1px solid #8885; }
.ps15-card { margin-block:40px 64px; }
.ps15-card .ps15-price { margin:15px 0; }
.ps15-card .ps15-price>strong { font-size:30px; }
.ps15-product .button:focus-visible,.ps15-card .button:focus-visible { outline:3px solid #d6b883;outline-offset:5px; }
@media(min-width:901px) { .ps15-panel { transform:rotate(-.5deg); } }
@media(max-width:1050px) { .ps15-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:800px) { .ps15-hero,.ps15-start { grid-template-columns:minmax(0,1fr); }.ps15-hero { padding-block:42px 20px; }.ps15-panel { max-width:720px; }.ps15-start { gap:30px; } }
@media(max-width:500px) { .ps15-feature-grid { grid-template-columns:minmax(0,1fr); }.ps15-hero .button-row { align-items:stretch; }.ps15-hero .button { text-align:center; } }
