:root{color-scheme:light;font-family:system-ui,sans-serif;color:#211c27;background:#f5f1eb;--accent:#551d35;--line:#e4d9d2;--quiet:#645969}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 85% 0,#e8d9e0,transparent 44rem)}
body.SALLA{--accent:#14584e;background:radial-gradient(ellipse at 85% 0,#d6e9df,transparent 44rem)}
.frame{width:min(68rem,calc(100% - 2rem));margin-inline:auto}
.top,.foot{display:flex;align-items:center;justify-content:space-between;padding-block:1.25rem;border-block-end:1px solid var(--line)}
.top nav,.actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
a{color:var(--accent);text-underline-offset:.23em}
.brand{font-size:1.32rem;font-weight:850;text-decoration:none;letter-spacing:-.045em;color:inherit}
.brand span{display:inline-block;width:.42rem;height:.42rem;margin-inline-start:.16rem;border-radius:50%;background:var(--accent)}
.intro{padding-block:clamp(2rem,7vw,5rem) 2rem}.kicker{font-size:.83rem;font-weight:750;color:var(--accent)}
h1,h2{margin:0;font-weight:760;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.7rem)}h2{font-size:1.32rem}
p{line-height:1.65;color:var(--quiet)}
.layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:1rem;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:1.3rem;padding:clamp(1rem,4vw,2.25rem);box-shadow:0 1.1rem 3rem #3423320b}
.catalogue{max-width:47rem}.details a{display:block;width:fit-content;margin-block:.8rem;overflow-wrap:anywhere}.email{font-weight:700}
label{display:grid;gap:.35rem;font-weight:650}form{display:grid;gap:1rem}input,textarea{width:100%;min-width:0;border:1px solid #a49ba6;border-radius:.65rem;background:#fff;padding:.65rem .8rem;font:inherit;color:inherit}textarea{resize:vertical}
.field-note{margin:0;font-size:.88rem}.notice{padding:.75rem 1rem;margin-block:0 1rem;border-radius:.6rem;color:#164835;background:#edf6ee}.notice.error{color:#6b142b;background:#fcecf0}
button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;width:fit-content;padding:.65rem 1.2rem;border:0;border-radius:2rem;background:var(--accent);color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.foot{margin-block-start:auto;padding-block-start:2rem;border-block-end:0}.foot a{font-size:.88rem}
main{padding-block-end:2rem}
@media(max-width:44rem){.layout{grid-template-columns:minmax(0,1fr)}.top nav{gap:.85rem}}
