/* Delivery and contact only; native editable CMS content remains the source. */
#cms .page-content:has(.ss2-info) { max-width:1120px; padding:8px 0 32px; border:0; border-radius:0; background:transparent; }
#cms .ss2-info { color:#292b2e; font-size:16px; line-height:1.7; }
#cms .ss2-info h2, #cms .ss2-info h3 { color:#242629; margin:0 0 12px; font-weight:700; line-height:1.25; text-transform:none; }
#cms .ss2-info h2 { font-size:clamp(27px,3.5vw,36px); }
#cms .ss2-info h3 { font-size:23px; }
#cms .ss2-info p { margin:0 0 14px; }
#cms .ss2-info p:last-child { margin-bottom:0; }
#cms .ss2-info a { color:#256a3d; text-underline-offset:4px; }
#cms .ss2-info a:focus-visible { outline:3px solid #b48a43; outline-offset:5px; }
#cms .ss2-info .ss2-eyebrow { color:#826126; font-size:12px; font-weight:700; letter-spacing:1.4px; margin-bottom:10px; }
#cms .ss2-info .ss2-intro { max-width:800px; margin-bottom:28px; }
#cms .ss2-info .ss2-lead { color:#5b5e63; font-size:17px; }
#cms .ss2-info .ss2-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:30px; }
#cms .ss2-info .ss2-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
#cms .ss2-info .ss2-card { min-width:0; padding:clamp(22px,3vw,30px); border:1px solid #e3e5e8; border-radius:20px; background:#fff; }
#cms .ss2-info .ss2-cream { background:#fbf8f2; border-color:#e5dac7; }
#cms .ss2-info .ss2-cool { background:#f0f8f9; border-color:#cce5e8; }
#cms .ss2-info .ss2-accent { border-top:4px solid #b48a43; }
#cms .ss2-info .ss2-number { color:#242629; font-size:clamp(32px,4vw,40px); font-weight:700; line-height:1.15; margin-bottom:12px; }
#cms .ss2-info .ss2-cool .ss2-number { color:#0d7381; }
#cms .ss2-info .ss2-phone { display:inline-block; padding:6px 0; font-size:clamp(25px,3vw,34px); font-weight:700; line-height:1.3; text-decoration:none; color:#242629; }
#cms .ss2-info .ss2-small { font-size:14px; color:#5b5e63; }
#cms .ss2-info .ss2-feature { display:grid; grid-template-columns:1fr 1.25fr; border-radius:22px; overflow:hidden; background:#242629; margin-bottom:20px; }
#cms .ss2-info .ss2-guarantee { padding:clamp(24px,3vw,36px); color:#f2f3f4; }
#cms .ss2-info .ss2-guarantee h3 { font-size:clamp(26px,3vw,32px); color:#fff; }
#cms .ss2-info .ss2-guarantee .ss2-eyebrow { color:#e8c58a; }
#cms .ss2-info .ss2-guarantee a { color:#fff; font-size:23px; }
#cms .ss2-info .ss2-photo { margin:0; background:#f3f1ed; display:flex; flex-direction:column; justify-content:center; }
#cms .ss2-info .ss2-photo img { width:100%; height:auto; display:block; margin:0; }
#cms .ss2-info .ss2-photo .ss2-caption { padding:10px 18px; font-size:12px; color:#5b5e63; }
#cms .ss2-info .ss2-section-title { margin:32px 0 18px; font-size:26px; }
#cms .ss2-info .ss2-note { border-top:1px solid #e5dac7; padding-top:18px; margin-top:18px; }
#cms .ss2-info .ss2-guarantee .ss2-note { border-color:#575b60; }
#cms .ss2-info .ss2-button { display:inline-block; background:#256a3d; color:#fff; border-radius:8px; padding:12px 20px; text-decoration:none; font-weight:600; }
#cms .ss2-info .ss2-button:hover { background:#174c29; }
#cms .ss2-info .ss2-bank { font-variant-numeric:tabular-nums; }
@media(max-width:767px) {
  #cms .ss2-info .ss2-grid, #cms .ss2-info .ss2-feature { grid-template-columns:1fr; }
  #cms .ss2-info .ss2-grid { gap:16px; }
}

@media(min-width:768px) { #cms.cms-id-4 .page-content { max-width:1120px; } }

#cms .ss2-about-portrait { max-width:840px; margin:0 auto 44px; overflow:hidden; border-radius:12px; background:#f7f5ed; }
#cms .ss2-about-portrait img { display:block; width:100%; height:auto; margin:0; }
#cms .ss2-about-portrait__copy { padding:24px 28px; text-align:center; color:#18372b; }
#cms .ss2-about-portrait__names { font-size:12px; letter-spacing:1.5px; margin:0 0 10px; }
#cms .ss2-about-portrait h2 { font-family:Georgia,serif; font-size:28px; font-weight:400; line-height:1.25; margin:0 0 12px; }
#cms .ss2-about-portrait__copy > p:last-child { font-size:16px; line-height:1.65; margin:0; }
@media(max-width:767px) {
  #cms .ss2-about-portrait { margin-bottom:24px; }
  #cms .ss2-about-portrait__copy { padding:20px 16px; }
  #cms .ss2-about-portrait h2 { font-size:24px; }
}

#cms.cms-id-4 .page-content { border:0; padding:0 0 32px; background:transparent; }
#cms .ss2-about-story { max-width:960px; margin:auto; color:#293a33; font-size:17px; line-height:1.85; }
#cms .ss2-about-section { padding:32px 40px; margin:0 0 24px; border:1px solid #e3e8e1; border-radius:16px; background:#fff; }
#cms .ss2-about-section:nth-child(3n+2) { background:#f8f7f2; border-color:#ece9df; }
#cms .ss2-about-section h1, #cms .ss2-about-section h2 { color:#18372b; font-size:clamp(24px,2.4vw,30px); line-height:1.35; margin:0 0 22px; font-weight:650; text-transform:none; }
#cms .ss2-about-section h3 { color:#244c38; font-size:22px; line-height:1.4; margin:0 0 16px; }
#cms .ss2-about-section p { max-width:76ch; margin:0 0 18px; }
#cms .ss2-about-section p:last-child { margin-bottom:0; }
#cms .ss2-about-story br { display:none; }
#cms .ss2-about-story p:empty { display:none; }
#cms .ss2-about-story ul { padding-left:24px; margin:18px 0; }
#cms .ss2-about-story li { margin-bottom:12px; padding-left:4px; }
#cms .ss2-about-story a { color:#23643e; text-underline-offset:3px; }
#cms .ss2-about-subsection { border-top:1px solid #dfe6dc; padding-top:24px; margin-top:26px; }
@media(max-width:767px) {
  #cms .ss2-about-story { font-size:16px; line-height:1.8; }
  #cms .ss2-about-section { padding:24px 20px; margin-bottom:18px; border-radius:12px; }
  #cms .ss2-about-section h3 { font-size:20px; }
  #cms .ss2-about-portrait { margin-bottom:28px; }
}
