:root{--ink:#142b49;--muted:#41556b;--cream:#fff;--blue:#eaf1f8;--line:#d5dfe9}
header{border-bottom:1px solid var(--line);background:#fff}
header .brand{text-decoration:none;font-size:.9rem}
.header-quote{font-weight:700;text-underline-offset:.2em}
.hero{background:#f1f5fa;padding:clamp(1rem,3.5vw,3rem) 0}
.hero .cover{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);gap:0;align-items:stretch;background:#142b49}
.cover figure{min-width:0}
.cover figure img{height:100%;min-height:22rem;aspect-ratio:1.2;object-fit:cover;border-radius:0}
.cover-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(1.35rem,4vw,3.5rem);color:white}
.cover-copy h1{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.045em}
.hero .cover-copy p:not(.eyebrow){color:#e7eef7}
.cover-copy .eyebrow{color:#c8d9ed}
.cover-copy .button{background:#fff;color:var(--ink)}
.contents{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(1rem,5vw,4rem);padding:clamp(2rem,5vw,4rem) 0;border-bottom:1px solid var(--line)}
.contents h2{margin:.5rem 0 .7rem}
.contents p{color:var(--muted)}
.contents nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0 .9rem;padding:0;border:0;scroll-margin-top:1rem}
.contents nav a{display:block;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font-weight:650;padding:.7rem .4rem;font-size:.93rem}
.contents nav a:hover{background:var(--blue)}
.menu{padding:clamp(2rem,5vw,4rem) 0;scroll-margin-top:1rem}
.menu h2{margin-bottom:1rem}
.menu .eyebrow{color:#405c77}
.cards,.garland-gallery{gap:clamp(1rem,2.2vw,1.65rem)}
.cards article{padding:0 0 1rem;border:0;border-bottom:1px solid var(--line);border-radius:0}
.card-photo{border-radius:0}
.cards h3{margin-top:.4rem}
.cards .price{padding-top:.15rem}
.garland-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
figcaption{line-height:1.4;margin-top:.55rem}
#photo-search{margin-top:1.5rem;padding:1.25rem;background:#f1f5fa;border:1px solid var(--line)}
.contact{border-radius:0}
@media(max-width:760px){
  .hero .cover,.contents{grid-template-columns:minmax(0,1fr)}
  .cover figure img{min-height:0;height:auto;aspect-ratio:4/3}
  .garland-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:400px){
  .contents nav,.garland-gallery{grid-template-columns:minmax(0,1fr)}
}
