/*
  Hilliard Funeral Flowers — custom editorial theme
  Clean, restrained and locally crafted rather than template-driven.
*/
:root{
  color-scheme: light only;
  --paper:#ffffff;
  --surface:#f5f6f4;
  --ink:#282c2b;
  --ink-soft:#626866;
  --line:#d8ddda;
  --deep:#31433e;
  --deep2:#24332f;
  --accent:#766957;
  --accent-soft:#b7aa98;
}

html,body{background:var(--paper)!important;color:var(--ink)!important}
body{
  font-family:"Avenir Next",Avenir,"Segoe UI",Helvetica,Arial,sans-serif!important;
  font-size:16.5px!important;
  line-height:1.72!important;
  letter-spacing:.003em;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.bar-name,.rail-name,.rail-phone,.rail-v,.piece-name,.hl-n,.testi-item p,.pull,.quickcard b,.editorial h1,.editorial h2,.editorial h3{
  font-family:Baskerville,"Baskerville Old Face","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif!important;
  letter-spacing:0!important;
}

/* Header: simple and composed, with no heavy color block */
.bar{background:#fff!important;border-bottom:1px solid var(--line)!important}
.bar .wrap{max-width:1120px!important;padding:18px 30px 14px!important;align-items:center!important}
.site-logo{width:188px!important;max-width:45vw!important}
.bar-call{font-size:12.5px!important;line-height:1.55!important;color:var(--ink-soft)!important}
.bar-call a{color:var(--deep)!important;border-bottom:0!important;text-decoration:none!important}
.bar-email{font-size:12px!important;color:var(--ink-soft)!important}

.site-nav{background:#fff!important;border-bottom:1px solid var(--line)!important}
.site-nav .nav-wrap{max-width:1120px!important;padding:9px 30px 10px!important;gap:24px!important}
.site-nav a{
  font-size:11px!important;
  font-weight:650!important;
  text-transform:uppercase;
  letter-spacing:.115em;
  color:#4e5653!important;
}
.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--deep)!important}

/* Main layout */
.wrap{max-width:1060px!important;padding-left:30px!important;padding-right:30px!important}
.page{max-width:1060px!important;grid-template-columns:220px minmax(0,1fr)!important;gap:62px!important;padding:0 30px 96px!important}
.col{padding-top:52px!important}
.col .kicker,.editorial .kicker{
  color:var(--accent)!important;
  font-size:11px!important;
  font-weight:650!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
}
.col h1,.editorial h1{
  color:var(--deep2)!important;
  font-weight:400!important;
  line-height:1.04!important;
}
.col h1{font-size:clamp(2.15rem,4.2vw,3.1rem)!important;max-width:17ch!important;margin-bottom:18px!important}
.editorial{max-width:920px!important;padding:58px 30px 92px!important}
.editorial h1{font-size:clamp(2.45rem,5.2vw,4rem)!important;max-width:18ch!important;margin-bottom:22px!important}
.col p,.editorial p,.editorial li{color:var(--ink-soft)!important}
.col p.lede,.editorial p.lede{color:var(--ink)!important;font-size:18px!important;line-height:1.7!important}
.col h2,.editorial h2{
  color:var(--deep)!important;
  font-style:normal!important;
  font-weight:400!important;
}
.editorial h2{font-size:1.7rem!important;margin-top:48px!important}
.editorial h3{font-size:1.23rem!important;font-weight:400!important}
.divider,.homes,.endnote,.faq-item{border-color:var(--line)!important}

/* Left rail */
.rail{padding-top:46px!important}
.rail-logo img{width:176px!important}
.rail-name{font-size:19px!important;font-weight:400!important;color:var(--deep2)!important}
.rail-phone{font-size:19px!important;font-weight:400!important;color:var(--deep)!important}
.rail-facts,.rail-crumb{border-color:var(--line)!important}
.rail-k{color:var(--accent)!important;letter-spacing:.12em!important;font-size:10px!important}
.rail-v{font-size:16px!important;color:var(--ink)!important}
.rail-v small,.rail-hours,.rail-email,.rail-crumb a{color:var(--ink-soft)!important}

/* Buttons: square, editorial, not app-like */
.callbtn,.btn-s{
  border-radius:0!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.1em!important;
  padding:12px 18px!important;
  font-weight:650!important;
}
.callbtn{background:var(--deep)!important;color:#fff!important;border:1px solid var(--deep)!important}
.callbtn:hover{background:var(--deep2)!important}
.btn-s{background:#fff!important;color:var(--deep)!important;border:1px solid #8e9692!important;opacity:1!important}
.btn-s:hover{border-color:var(--deep)!important}

/* Content blocks: use rules and whitespace rather than shaded boxes */
.quicknav{gap:0!important;border-top:1px solid var(--line)!important;border-left:1px solid var(--line)!important}
.quickcard{
  background:#fff!important;
  border:0!important;
  border-right:1px solid var(--line)!important;
  border-bottom:1px solid var(--line)!important;
  padding:22px!important;
}
.quickcard b{font-size:18px!important;font-weight:400!important;color:var(--deep2)!important}
.quickcard span{color:var(--ink-soft)!important}
.notice,.portfolio-note{border-left:1px solid var(--accent-soft)!important;padding-left:22px!important}
.custom-help,.contact-panel,.partner-note,.guide-toc{
  background:#fff!important;
  border:0!important;
  border-top:1px solid var(--line)!important;
  border-bottom:1px solid var(--line)!important;
  border-left:0!important;
  padding:24px 0!important;
}
.custom-help h3,.contact-panel h2{font-weight:400!important;color:var(--deep2)!important}
.custom-help-links a,.contact-line a,.guide-toc a{color:var(--deep)!important;border-color:var(--accent-soft)!important}

/* Products and portfolio: image-led, no card-template feel */
.prods{gap:30px 22px!important}
.prod{border:0!important;background:#fff!important}
.prod img{background:var(--surface)!important;border:1px solid var(--line)!important}
.prod-b{padding:13px 1px 0!important}
.prod-b h3{font-size:18px!important;font-weight:400!important;color:var(--deep2)!important}
.prod-b p{font-size:13.5px!important;color:var(--ink-soft)!important}
.prod-b a{color:var(--deep)!important;font-size:11.5px!important;text-transform:uppercase!important;letter-spacing:.08em!important}

.gallery-grid{gap:36px 26px!important}
.gallery-card{border:0!important;background:#fff!important}
.gallery-card img{border:1px solid var(--line)!important;background:var(--surface)!important}
.gallery-card figcaption{padding:11px 1px 0!important;color:var(--ink-soft)!important;font-size:13.5px!important;line-height:1.55!important}
.about-portrait{border:0!important;background:var(--surface)!important}
.portrait-caption{font-size:12px!important;font-style:italic!important}

/* Plain lists */
.piece{border-color:var(--line)!important;padding:16px 0!important}
.piece img{border-color:var(--line)!important}
.piece-name{font-size:17px!important;font-weight:400!important;color:var(--deep2)!important}
.piece a{color:var(--deep)!important;border-color:var(--accent-soft)!important}
.flowitem b{color:var(--accent)!important;font-weight:400!important}
.home-link{border-color:var(--line)!important}
.hl-n{font-weight:400!important;color:var(--deep2)!important}
.hl-c{color:var(--ink-soft)!important;letter-spacing:.09em!important}
.testi-stars{color:var(--accent)!important}
.testi-item p{font-weight:400!important;color:var(--ink)!important}

/* Footer: light and quiet instead of a generic dark template block */
footer.sitefoot{
  background:var(--surface)!important;
  color:var(--ink-soft)!important;
  border-top:1px solid var(--line)!important;
  padding:46px 0 34px!important;
}
footer.sitefoot h4{color:var(--accent)!important;letter-spacing:.12em!important}
footer.sitefoot a{color:#525b58!important}
footer.sitefoot a:hover{color:var(--deep)!important}
footer.sitefoot .f-name{font-weight:400!important;color:var(--deep2)!important}
.f-logo{background:transparent!important;padding:0!important;width:165px!important}
.f-bot{border-color:var(--line)!important}

/* Refined details */
em{color:var(--accent)!important}
a{transition:color .16s ease,border-color .16s ease,background .16s ease}
::selection{background:#e5e9e6;color:var(--ink)}
:focus-visible{outline:2px solid var(--deep)!important;outline-offset:3px!important}

@media(max-width:760px){
  .bar .wrap,.site-nav .nav-wrap,.wrap,.editorial{padding-left:20px!important;padding-right:20px!important}
  .page{grid-template-columns:1fr!important;gap:24px!important;padding-left:20px!important;padding-right:20px!important}
  .rail{position:static!important;padding-top:28px!important}
  .site-logo{width:165px!important}
  .site-nav .nav-wrap{gap:13px 18px!important}
  .site-nav a{font-size:10px!important}
  .editorial{padding-top:40px!important}
  .quicknav,.gallery-grid,.prods,.about-grid,.truth-grid,.f-grid{grid-template-columns:1fr!important}
}
