/* Homepage refinements. Image sources, aspect ratios and cover positions stay authored. */
.smiths-home main { position:relative; z-index:10; }
.smiths-home .hero-copy {
  max-width:820px;
  padding:clamp(140px,12vw,172px) 24px 0;
}
.smiths-home .hero-copy h1 { max-width:760px; margin-inline:auto; text-wrap:balance; }
.smiths-home .sub { max-width:760px; margin-top:24px; line-height:1.75; text-wrap:balance; }
.smiths-home .hero-actions { margin-top:28px; gap:12px; }
.smiths-home .hero-action { min-height:48px; letter-spacing:.02em; }
.smiths-home .hero-action-primary { box-shadow:0 8px 24px rgba(192,138,62,.14); }
.smiths-home .hero-action-secondary { border-color:rgba(247,244,238,.35); }
.smiths-home #arcWrap {
  width:min(1200px,90%); margin:28px auto 104px;
  height:clamp(250px,27vw,360px);
}
.smiths-home .card .label { line-height:1.5; }
.smiths-home .card .label b { font-weight:700; font-style:normal; line-height:1.3; }
.smiths-home .card:focus-visible { outline:3px solid var(--crema); outline-offset:4px; z-index:20; }
.smiths-home .card:focus-visible img { filter:brightness(1.05); }
.smiths-home .distributors { padding:0; }
.smiths-home .dist-label { margin-bottom:12px; }
.smiths-home .marquee-viewport { overflow-x:auto; cursor:auto; overscroll-behavior-x:contain; }
.smiths-home .marquee-viewport[data-marquee-ready] { overflow:hidden; cursor:pointer; }
.smiths-home .marquee-viewport[data-marquee-static] { overflow-x:auto; cursor:auto; }
.smiths-home .marquee-viewport.paused::before { content:'Paused — click or press Enter to resume'; }
.smiths-home .marquee-viewport[data-marquee-static]::before { display:none; }
.smiths-home .marquee-viewport[data-marquee-static] .marquee-track { transform:none !important; }
.smiths-home .marquee-viewport[data-marquee-static] [aria-hidden="true"] { display:none; }
.smiths-home .marquee-track { will-change:auto; }
.smiths-home .barista-section {
  padding:0;
  display:grid;
  grid-template-rows:100px auto 110px;
  justify-items:center;
}
/* Restore the original video height and panel placement without section padding. */
.smiths-home .barista-inner { grid-row:2; width:min(720px,100%); }
.smiths-home .barista-sub { color:#d4cdc2; }
.smiths-home .services-section { width:min(1200px,90%); padding:clamp(48px,6vw,88px) 0; }
.smiths-home .services-header { max-width:650px; margin-bottom:32px; }
.smiths-home .services-header h2 { font-family:'Switzer-Semibold',sans-serif; font-weight:600; line-height:1.08; }
.smiths-home .services-header p { color:#d4cdc2; }
.smiths-home .services-grid { max-width:100%; gap:24px; }
.smiths-home .service-card { border-color:rgba(247,244,238,.18); box-shadow:0 8px 24px rgba(0,0,0,.12); }
.smiths-home .service-card:focus-visible { border-color:var(--crema); }
.smiths-home .site-footer { padding-top:clamp(40px,5vw,72px); }

.smiths-home .home-closing { width:min(1200px,90%); margin-inline:auto; padding-top:32px; padding-bottom:88px; }
.smiths-home .home-cta {
  padding:clamp(28px,5vw,60px);
  border:1px solid rgba(192,138,62,.35);
  border-radius:22px;
  background:linear-gradient(120deg,rgba(192,138,62,.1),rgba(247,244,238,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.smiths-home .home-cta-label { margin-bottom:18px; color:#d5a461; font-size:11px; line-height:1.5; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.smiths-home .home-cta h2 { max-width:23ch; color:var(--cream); font-family:'Fraunces',serif; font-size:clamp(30px,3.3vw,44px); font-weight:500; line-height:1.15; letter-spacing:-.025em; text-wrap:balance; }
.smiths-home .home-cta-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.smiths-home .home-cta-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; min-height:48px; padding:14px 22px; border:1px solid rgba(247,244,238,.25); border-radius:999px; color:var(--cream); font-size:13px; font-weight:600; text-decoration:none; }
.smiths-home .home-cta-button-primary { border-color:var(--crema); background:var(--crema); color:#1a1815; }
.smiths-home .home-cta-button:hover { border-color:#dfbd8b; }
.smiths-home .home-cta-button-primary:hover { background:#d5a461; }
.smiths-home .home-cta-button:focus-visible { outline:3px solid #dfbd8b; outline-offset:5px; }

@media (max-width:560px) {
  .smiths-home .home-closing { width:calc(100% - 40px); padding-bottom:56px; }
  .smiths-home .home-cta { padding:28px 22px; }
  .smiths-home .home-cta-actions { flex-direction:column; }
}

@media (hover:hover) and (pointer:fine) {
  .smiths-home .arc .card:hover { z-index:20; }
  .smiths-home .card:focus-visible { transform:translateY(-16px) rotateY(0deg) rotateZ(0deg) scale(1.05) !important; }
}
@media (max-width:820px) {
  .smiths-home .hero-copy { padding:128px 24px 0; }
  .smiths-home .hero-copy h1 { font-size:clamp(38px,7.5vw,64px); }
  .smiths-home .sub { margin-top:20px; font-size:15px; }
  .smiths-home #arcWrap { width:100%; height:auto; margin:28px auto 24px; padding:16px 5%; }
  .smiths-home .arc-swipe-hint button { width:44px; height:44px; animation:none; }
  .smiths-home .barista-section { grid-template-rows:36px auto 36px; }
  .smiths-home .barista-inner { width:min(720px,88%); }
  .smiths-home .services-section { padding:48px 0; }
  .smiths-home .site-footer { padding-top:40px; }
  .smiths-home .card:focus-visible { transform:none !important; }
}
@media (max-width:400px) {
  .smiths-home .hero-copy { padding-inline:20px; }
  .smiths-home .hero-actions { flex-direction:column; gap:10px; margin-top:24px; }
  .smiths-home .hero-action { width:100%; max-width:280px; }
}
@media (prefers-reduced-motion:reduce) {
  .smiths-home .arc-wrap { perspective:none; }
  .smiths-home .arc { transform-style:flat; }
  .smiths-home .arc .card { transform:none !important; }
  .smiths-home .card:is(:hover,:focus-visible) { transform:none !important; }
  .smiths-home .card:is(:hover,:focus-visible) img { transform:none; }
  .smiths-home .marquee-viewport { overflow-x:auto; }
  .smiths-home .marquee-track { transform:none !important; }
  .smiths-home .dist-tile[aria-hidden="true"] { display:none; }
}
