:root{color-scheme:light;--ink:#28241e;--paper:#faf8f3;--line:#d8d0c1;--green:#315644;font-family:system-ui,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}header{background:#28241e;color:white;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,5vw,5rem)}a{color:inherit}header a{text-decoration:none}.brand{display:flex;flex-direction:column;font:2rem Georgia,serif;align-items:center;color:#e2be6e}.brand small{font:0.56rem system-ui,sans-serif;letter-spacing:.28em}nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}main{max-width:1260px;margin:auto;padding:clamp(1.2rem,4vw,4rem)}h1,h2{font:normal clamp(2rem,4.4vw,4.3rem)/1.06 Georgia,serif;margin:.3em 0 .65em}h2{font-size:1.8rem}p{line-height:1.6}label{display:block;font-weight:600;font-size:.9rem;margin:0 0 1rem}input,textarea{width:100%;border:1px solid #9e9586;border-radius:5px;padding:.75rem;font:inherit;background:white;margin-top:.35rem}textarea{resize:vertical}button{border:1px solid transparent;border-radius:5px;background:var(--green);color:white;font:inherit;padding:.7rem 1.1rem;cursor:pointer}button:disabled{opacity:.6;cursor:wait}.quiet{background:transparent;color:inherit;border-color:currentColor}button:focus-visible,a:focus-visible{outline:3px solid #b58b31;outline-offset:2px}
.signin{display:grid;grid-template-columns:1fr 1fr;max-width:900px;margin:4vh auto;background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.signin form{padding:clamp(1.5rem,4vw,3rem)}.signin h1{font-size:2.55rem}.cover{display:grid;place-items:center;background:#29251f}.cover img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:clamp(1rem,3vw,3rem)}aside{border-right:1px solid var(--line);padding-right:1.25rem}.row{border-radius:0;text-align:left;width:100%;display:block;color:var(--ink);background:transparent;border-bottom:1px solid var(--line);padding:1rem .65rem}.row[aria-current=true]{background:#eae6dc;border-left:3px solid var(--green)}.row small,.meta{display:block;color:#655d50;margin-top:.25rem}.actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.8rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(245px,100%),1fr));gap:1.5rem}.card{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.card>div{padding:1rem}.card img,.preview img{width:100%;height:195px;object-fit:cover}.preview{max-width:510px}.card p{white-space:pre-line}.preview{padding:1rem 0}.preview p{white-space:pre-line}details{margin:1rem 0}summary{cursor:pointer}#status{color:#803815}#status:empty{display:none}[hidden]{display:none!important}
@media(max-width:680px){.layout,.signin{grid-template-columns:1fr}.cover{padding:.6rem}.cover img{height:125px}aside{border:0;padding:0}#list{max-height:225px;overflow:auto}nav{font-size:.85rem;gap:.6rem}header{gap:.65rem}.signin{margin:1rem auto}}

select{display:block;font:inherit;margin-top:.35rem;padding:.6rem;background:white;border:1px solid #9e9586;border-radius:5px}

#catalog {color:#29382d}
.catalog-intro {display:grid;grid-template-columns:1.05fr 1fr;background:#eae5d8;overflow:hidden}
.intro-copy {padding:clamp(24px,4vw,60px);align-self:center}
.intro-copy .place {font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;color:#516554}
.intro-copy h1 {font-size:clamp(2.5rem,5.2vw,5rem);line-height:.99;max-width:9.6em;letter-spacing:-.035em;margin:.35em 0}
.intro-copy>p {max-width:37em}
.collection-link {display:inline-block;border-bottom:1px solid currentColor;text-decoration:none;font-weight:600;margin-top:.6rem;padding-bottom:.25rem}
.catalog-intro>img {width:100%;height:100%;min-height:0;max-height:390px;object-fit:cover;object-position:center 53%}
#collezione {scroll-margin:12px;padding:clamp(24px,4vw,56px) 0}
.collection-head {display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:24px}
.collection-head h2,.family h2 {font-size:clamp(2rem,3.2vw,3.25rem);letter-spacing:-.03em}
#cards {grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,30px)}
#cards .card {border:none;background:transparent;border-radius:0}
#cards .card>div {padding:14px 0}
#cards .card h2 {font-size:clamp(1.45rem,2vw,2.1rem);margin:0}
#cards .card img {aspect-ratio:4/3;height:auto;display:block;object-fit:cover}
#cards .card p {font-size:.96rem;color:#42483e;margin-bottom:0}
.family {display:grid;grid-template-columns:minmax(170px,1fr) 2fr;align-items:center;background:#eae5d8;gap:clamp(18px,4vw,64px);padding:clamp(20px,3vw,40px)}
.family img {width:100%;height:auto}.family p {max-width:56ch}
@media(max-width:760px){#cards {grid-template-columns:repeat(2,minmax(0,1fr))}.intro-copy {padding:22px}}
@media(max-width:520px){.catalog-intro,.family {grid-template-columns:1fr}.catalog-intro>img {height:195px}.family img {max-width:230px}#cards {grid-template-columns:1fr}.collection-head {align-items:start}.intro-copy h1 {font-size:2.6rem}.collection-head .actions {margin:0}}

.place {font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;font-weight:650}
.channel-intro {display:grid;grid-template-columns:1.6fr 1fr;align-items:center;background:#eae5d8;overflow:hidden}
.channel-intro>div {padding:clamp(22px,3.5vw,48px)}.channel-intro h1 {font-size:clamp(2.5rem,4.5vw,4.5rem);margin:.25em 0;letter-spacing:-.04em}.channel-intro img {width:100%;height:250px;object-fit:cover}
.basket-link {align-self:center;font-weight:600}.select-product {padding:.55rem .8rem}
.quote-box {background:#ece9df;padding:clamp(20px,4vw,45px);margin:1rem 0}.quote-box>p {max-width:65ch}.quote-fields {display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.quote-fields select {width:100%}.check {display:flex;align-items:center;gap:.6rem}.check input {width:auto}
.basket-row {display:grid;grid-template-columns:1fr 78px 2em auto;align-items:center;gap:.5rem;border-top:1px solid var(--line);padding:.6rem 0}.basket-row input {margin:0}
#basket {margin:1rem 0 1.5rem}.enquiry-entry {padding:1rem;border-bottom:1px solid var(--line)}
@media(max-width:760px){.channel-intro img {height:100%;max-height:290px}}
@media(max-width:570px){.quote-fields,.channel-intro {grid-template-columns:1fr}.channel-intro img {height:155px}.basket-row {grid-template-columns:1fr 65px auto}.basket-row button {justify-self:start}.collection-head .actions {align-items:center}.brand {font-size:1.4rem}.brand small {font-size:.44rem}header nav {justify-content:flex-end}}
.indicative-rate {grid-column:1/-1;color:#485e4e}
.rate-row {border-top:1px solid var(--line);padding:1rem 0;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.rate-row label {margin:0}
.entry-page main {max-width:1600px;padding:0 clamp(12px,2.8vw,48px);margin:auto}
.entry-page header nav>a:not(#adminlink){display:none}
.entry-hero {position:relative;isolation:isolate;overflow:hidden;display:grid;align-content:space-between;color:#fff9eb;background:#2c271e;padding:clamp(20px,3vw,48px);min-height:min(72svh,620px)}
.entry-photo {position:absolute;inset:0 0 0 auto;width:68%;height:100%;z-index:-2;object-fit:cover;object-position:50% 48%}
.entry-hero::before {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#29251f 7%,rgba(41,37,31,.98) 27%,rgba(41,37,31,.72) 43%,transparent 72%),linear-gradient(0deg,rgba(30,25,18,.64),transparent 30%)}
.entry-copy {max-width:510px;width:47%;margin:auto 0 1.5rem}
.entry-meta {display:flex;align-items:center;gap:.8rem}.entry-meta .place{margin:.4em 0;color:#e5d2a1}.entry-meta select {font-size:.8rem;margin:0;padding:.28rem;color:inherit;background:transparent;border:1px solid #9b8f75}.entry-meta option {color:#29251f;background:white}
.entry-copy h1 {font:normal clamp(2.7rem,5.4vw,5.25rem)/.99 Georgia,serif;letter-spacing:-.04em;margin:.28em 0}.entry-copy h1 i{display:block;color:#e2c889}.entry-story{font-size:1rem;max-width:39ch;line-height:1.5;margin:0}
.entry-choices {display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px}
.entry-choices a {position:relative;display:block;text-decoration:none;background:#f7f2e7;color:#213b2e;padding:clamp(16px,2vw,28px) clamp(26px,3vw,44px) clamp(16px,2vw,28px) clamp(14px,1.8vw,28px)}
.entry-choices a:hover,.entry-choices a:focus-visible {background:#dfebdc;color:#142f20}
.entry-choices a::after,.trace-actions a::after {content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;transform:translateY(-50%) rotate(-45deg);border-right:2px solid;border-bottom:2px solid}
.entry-choices strong {display:block;font:normal clamp(1.25rem,2.05vw,2.05rem)/1.13 Georgia,serif}.entry-choices small {display:block;margin:.28rem 0 0;color:#465649;font-size:.85rem}
.trace-intro{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:3vw}.trace-intro h1{font-size:clamp(2.5rem,5vw,4.5rem)}.trace-intro h2{margin-top:1.15em}.trace-intro .place{color:#53654b}.trace-intro img{width:100%;max-height:490px;object-fit:cover}.trace-actions{display:flex;flex-wrap:wrap;gap:.6rem}.trace-actions a{position:relative;padding:.78rem 2.7rem .78rem 1rem;background:#315644;color:white;text-decoration:none}
@media(max-width:700px){
.entry-page main{padding:0}.entry-hero{min-height:0;padding:20px 16px 16px}.entry-copy {width:64%;margin:0 0 18px}.entry-hero::before{background:linear-gradient(90deg,#29251f 0%,rgba(41,37,31,.94) 31%,rgba(41,37,31,.55) 57%,transparent 90%)}.entry-photo{width:67%;height:65%;object-position:55% 45%}
.entry-meta .place{font-size:.62rem;letter-spacing:.06em}.entry-copy h1{font-size:clamp(2.2rem,7.8vw,3.4rem)}.entry-story{font-size:.84rem;line-height:1.35}.entry-choices{grid-template-columns:1fr}.entry-choices a{padding:10px 36px 10px 14px}.entry-choices small{margin:.1rem 0 0;font-size:.76rem}.entry-choices strong{font-size:1.25rem}.trace-intro{grid-template-columns:1fr}.trace-intro img{max-height:200px}}
@media(max-height:560px) and (min-width:701px){.entry-hero{padding:12px 24px;min-height:0}.entry-copy h1{font-size:2.35rem}.entry-copy{margin:0 0 12px}.entry-choices a{padding-top:10px;padding-bottom:10px}}
@media(max-width:360px) {
  .entry-copy {width:78%;margin-bottom:12px}
  .entry-meta .place {max-width:145px}
  .entry-copy h1 {font-size:2rem}
  .entry-story {font-size:.8rem}
  .entry-choices a {padding-block:8px}
}

.entry-copy {width:min(55%,620px);max-width:none}
.family-story {display:flex;align-items:center;gap:clamp(14px,1.5vw,24px);max-width:560px}
.family-story img {width:clamp(100px,10vw,144px);height:auto;flex:none;border-radius:3px}
.family-story .entry-story {max-width:40ch;line-height:1.45;text-wrap:pretty}
@media(max-width:900px) and (min-width:701px) {
  .entry-copy {width:62%}
  .family-story img {width:96px}
}
@media(max-width:700px) {
  .entry-copy {width:100%;margin-bottom:14px}
  .entry-hero::before {background:linear-gradient(90deg,rgba(41,37,31,.94),rgba(41,37,31,.84) 40%,transparent 80%),linear-gradient(0deg,#29251f 43%,transparent 80%)}
  .entry-meta {width:65%}
  .entry-copy h1 {width:72%}
  .family-story {display:flow-root;background:#29251f;color:#fff9eb;padding:12px 0;margin-top:16px}
  .family-story img {float:left;width:clamp(90px,27vw,115px);margin:3px 13px 6px 0}
  .family-story .entry-story {font-size:.9rem;line-height:1.38;max-width:none}
}
@media(max-width:360px) {
  .entry-meta {width:77%}
  .family-story {padding:8px;gap:9px;margin-top:10px}
  .family-story img {width:86px}
  .family-story .entry-story {font-size:.865rem}
  .entry-copy {margin-bottom:10px}
}
@media(max-width:700px) and (max-height:720px) {
  .entry-copy {display:contents}
  .entry-meta,.entry-copy h1 {order:0}
  .entry-choices {order:1;margin-top:6px}
  .family-story {order:2;margin-top:12px}
  .entry-photo {height:190px}
}
a.family-story {color:inherit;text-decoration:none}
.story-invite {display:inline-block;margin-top:.45rem;color:#eed499;text-decoration:underline;text-underline-offset:.26em;font-size:.9rem}
.family-story:hover .story-invite {color:white}
#family {max-width:1100px;margin:auto;color:#29392d}
.family-mast {background:#eae4d8;display:grid;grid-template-columns:1.05fr 1fr;align-items:end;overflow:hidden}
.family-title {align-self:center;padding:clamp(24px,4vw,58px)}
.family-title .place,.family-film .place {color:#5c694e}
.family-title h1 {font-size:clamp(3rem,6vw,5.8rem);letter-spacing:-.045em}
.family-title p:not(.place){max-width:42ch}
.family-portrait {display:block;width:100%;height:auto;mix-blend-mode:multiply}
.family-chapter,.family-film {margin:clamp(32px,6vw,80px) 0;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,5vw,70px);align-items:center}
#family figure {margin:0}#family figure img {display:block;width:100%;max-height:390px;object-fit:cover}
#family figcaption {font-size:.82rem;color:#596257;line-height:1.4;margin-top:.65rem}
#family h2 {font-size:clamp(2rem,3.6vw,3.6rem);letter-spacing:-.04em;line-height:1.03}
.family-film {background:#eae4d8;padding:clamp(18px,3vw,42px);grid-template-columns:minmax(185px,.65fr) 1fr}
.family-film video {width:100%;max-height:460px;display:block;background:#29251f;aspect-ratio:9/16;object-fit:contain}
#family .cellar figure img {object-position:center}
@media(max-width:700px){
.family-mast,.family-chapter,.family-film {grid-template-columns:1fr}
.family-portrait {max-width:450px;justify-self:center}
.family-title {padding:22px 22px 0}.family-title .entry-meta {width:auto}
.family-film>div {grid-row:1}.family-film figure {width:min(100%,300px);justify-self:center}
#family figure img {max-height:320px}
}
.channel-tools {display:flex;align-items:center;justify-content:space-between;gap:12px}
.channel-tools .place {margin:0}
.channel-tools select {flex:none;margin:0;min-height:44px;font-size:1rem;color:#29382d}
.family-reading{max-width:72ch;margin:clamp(32px,6vw,76px) auto}.family-reading h3{font:normal 1.65rem Georgia,serif;margin-bottom:.35em}.family-reading a{color:#315644;text-underline-offset:3px}
.specialities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.3vw,32px);margin:1.8rem 0}
#family .family-speciality img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.family-speciality h3{font:normal 1.55rem Georgia,serif;margin:.6em 0 .2em}.family-speciality p{line-height:1.5;margin:.4em 0}
@media(max-width:760px){.specialities{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.specialities{grid-template-columns:1fr}.family-speciality{display:grid;grid-template-columns:76px 1fr;gap:14px;border-top:1px solid var(--line);padding-top:14px}.family-speciality h3{margin:0}.family-speciality p{font-size:.95rem}}
#trace {max-width:1100px;margin:auto;color:#263c30}
.trace-lead {background:#254437;color:#fffaee;padding:clamp(22px,4vw,48px)}
.trace-tools {display:flex;align-items:center;justify-content:space-between;gap:12px}.trace-tools small,.trace-paper small {text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
.trace-tools select {margin:0;min-height:44px}
.trace-opening {display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(20px,5vw,65px);padding:1.1rem 0 .4rem}
.trace-opening h1 {font-size:clamp(2.6rem,5vw,4.6rem);letter-spacing:-.04em;margin:.22em 0}
.trace-paper {margin:0;background:#fffcf2;color:#2b3d31;border-top:5px solid #c5aa73;padding:clamp(18px,2.5vw,32px);box-shadow:5px 7px 0 #1d362b}
.trace-paper h2 {font-size:clamp(1.55rem,2.5vw,2.1rem);margin:.7em 0}
.trace-paper dl {display:grid;grid-template-columns:auto 1fr;margin:0}
.trace-paper dt,.trace-paper dd {margin:0;padding:.7em .4em;border-top:1px solid #ccc5b3;font-size:.9rem}
.trace-paper dt{font-weight:600}.trace-paper dt:last-of-type,.trace-paper dd:last-child{background:#e5ecdd}
.trace-record,.trace-receipt {padding:clamp(24px,4vw,48px) 0}.trace-record ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2.5vw,35px);padding:0;margin:1.4rem 0 0}
.trace-record li {border-top:2px solid #81957b}.trace-record h3{font:normal 1.45rem Georgia,serif;margin:.75em 0 .4em}.trace-record p{margin:.4em 0}
.trace-case {background:#ede9df;border-left:4px solid #987e48;padding:clamp(18px,3vw,34px)}.trace-case p,.trace-receipt p {max-width:78ch}
@media(max-width:720px){.trace-opening,.trace-record ol{grid-template-columns:1fr}.trace-record ol{gap:1rem}.trace-paper dd{overflow-wrap:anywhere}.trace-tools{gap:.7rem}}

.trace-illustration {display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.trace-record picture {display:block;margin:.7rem 0}
@media(min-width:721px){
  .trace-record ol {row-gap:0}
  .trace-record li {display:grid;grid-row:span 3;grid-template-rows:subgrid}
  .trace-record h3 {align-self:start}
}
