.sabbia-home .change-heading { display: grid; grid-template-columns: minmax(0px, 1fr) 220px; gap: 50px; align-items: center; margin-bottom: 42px; }
.sabbia-home .change-heading h2 { font-size: 56px; line-height: 1.07; }
.sabbia-home .change-intro { color: var(--muted); font-size: 17px; line-height: 1.65; max-width: 780px; margin-top: 22px; }
.sabbia-home .change-note { font: italic 30px / 1.3 SabbiaHomeForum, Georgia, serif; color: rgb(134, 112, 95); padding: 14px 0px 18px; border-bottom: 1px solid rgb(184, 166, 146); text-align: center; }
.sabbia-home .use-grid article { display: flex; flex-direction: column; }
.sabbia-home .story-image { position: relative; aspect-ratio: 3 / 4; flex: 0 0 auto; overflow: hidden; }
.sabbia-home .story-image > img { width: 100%; height: 100%; object-fit: cover; }
.sabbia-home .story-image-note { position: absolute; left: 12px; right: 12px; bottom: 14px; width: max-content; max-width: calc(100% - 24px); background: rgba(243, 241, 236, 0.93); padding: 9px 12px; font-size: 10px; line-height: 1.5; color: var(--ink); border-radius: 4px; }
.sabbia-home .use-grid .item-number { font-size: 9px; min-height: 29px; margin-top: 18px; }
.sabbia-home .use-grid h3 { font-size: 28px; line-height: 1.12; margin: 4px 0px 14px; min-height: 64px; }
.sabbia-home .use-grid p { font-size: 13px; line-height: 1.7; }
.sabbia-home .use-grid .story-note { font-size: 11px; margin-top: 10px; }
.sabbia-home .story-benefit { display: flex; align-items: center; gap: 12px; margin-top: auto; padding-top: 25px; color: rgb(128, 99, 67); font-size: 10px; text-transform: uppercase; line-height: 1.65; }
.sabbia-home .story-benefit img { flex: 0 0 25px; opacity: 0.6; }
.sabbia-home .preparation-section { background: var(--paper); }
.sabbia-home .tools-layout { display: grid; grid-template-columns: minmax(0px, 0.95fr) minmax(0px, 1fr); gap: 80px; align-items: center; }
.sabbia-home .tools-cutout { width: 100%; height: auto; max-height: 660px; object-fit: contain; background: transparent; }
.sabbia-home .tools-copy h3 { font-size: 40px; line-height: 1.13; }
.sabbia-home .tools-copy > p:not(.eyebrow):not(.section-lead) { color: var(--muted); font-size: 14px; max-width: 450px; }
.sabbia-home .tools-copy .section-lead { font-size: 22px; max-width: 420px; margin-top: 20px; }
.sabbia-home .tool-list { list-style: none; margin: 30px 0px 0px; padding: 0px; }
.sabbia-home .tool-list li { display: flex; gap: 18px; padding: 20px 0px; border-top: 1px solid var(--line); }
.sabbia-home .tool-list img { flex: 0 0 26px; opacity: 0.65; margin-top: 3px; }
.sabbia-home .tool-list strong { font-size: 14px; font-weight: 500; display: block; }
.sabbia-home .tool-list span { font-size: 13px; display: block; color: var(--muted); margin-top: 5px; }
.sabbia-home .preparation-strip { display: grid; grid-template-columns: 180px minmax(0px, 1fr); gap: 46px; margin-top: 56px; padding-top: 38px; border-top: 1px solid var(--line); align-items: start; }
.sabbia-home .preparation-strip > img { width: 180px; height: auto; aspect-ratio: 3 / 4; object-fit: cover; }
.sabbia-home .preparation-strip h3 { font-size: 32px; margin-bottom: 25px; }
.sabbia-home .prep-steps { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 30px; list-style: none; margin: 0px; padding: 0px; }
.sabbia-home .prep-steps li > span { color: var(--wine); font: 25px / 1 SabbiaHomeForum, Georgia, serif; }
.sabbia-home .prep-steps h4 { font-size: 14px; font-weight: 500; line-height: 1.45; margin: 12px 0px 10px; }
.sabbia-home .prep-steps p { font-size: 12px; color: var(--muted); line-height: 1.7; }
.sabbia-home .prep-note { font-size: 12px; margin-top: 25px; color: var(--muted); }
.sabbia-home .techniques-section { background: white; }
.sabbia-home .technique-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; }
.sabbia-home .technique-heading .section-lead { font-size: 18px; margin-bottom: 0px; color: var(--muted); }
.sabbia-home .arrows-switch { display: flex; gap: 10px; align-items: center; cursor: pointer; font-size: 12px; flex-shrink: 0; padding-bottom: 4px; }
.sabbia-home .arrows-switch input { appearance: auto; width: 17px; height: 17px; accent-color: var(--wine); margin: 0px; }
.sabbia-home .technique-grid { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 22px; }
.sabbia-home .technique-card { min-width: 0px; }
.sabbia-home .technique-media { position: relative; aspect-ratio: 9 / 16; isolation: isolate; overflow: hidden; background: rgb(228, 226, 223); }
.sabbia-home .technique-media video { width: 100%; height: 100%; object-fit: contain; }
.sabbia-home .movement-overlay { position: absolute; inset: 0px; width: 100%; height: 100%; pointer-events: none; color: rgb(255, 253, 248); opacity: 0; transition: opacity 650ms; filter: drop-shadow(rgba(56, 44, 33, 0.376) 0px 1px 1px); }
.sabbia-home .movement-overlay path { fill: none; stroke: currentcolor; stroke-width: 1.5px; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.sabbia-home .technique-media.guides-visible .movement-overlay { opacity: 0.9; }
.sabbia-home .techniques-section.hide-directions .movement-overlay { opacity: 0; }
.sabbia-home .technique-controls { position: absolute; top: 10px; right: 10px; display: flex; gap: 6px; z-index: 2; }
.sabbia-home .technique-controls .icon-button { width: 36px; height: 36px; flex-basis: 36px; padding: 8px; border: 0px; background: rgba(243, 241, 236, 0.91); color: var(--ink); }
.sabbia-home .technique-controls .icon-button:hover { background: white; }
.sabbia-home .technique-choice { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; padding-top: 20px; border-top: 2px solid transparent; }
.sabbia-home .technique-choice:has(input:checked) { border-color: var(--wine); }
.sabbia-home .technique-choice > input { appearance: auto; accent-color: var(--wine); margin: 8px 0px 0px; width: 15px; height: 15px; flex: 0 0 15px; }
.sabbia-home .technique-choice strong { display: block; font: 27px / 1.15 SabbiaHomeForum, Georgia, serif; }
.sabbia-home .technique-choice > span > span { display: block; font-size: 12px; color: var(--muted); line-height: 1.7; margin-top: 12px; }
.sabbia-home .technique-bottom { display: flex; justify-content: space-between; gap: 25px; align-items: center; border-top: 1px solid var(--line); padding-top: 25px; margin-top: 35px; }
.sabbia-home #effect-selection { font-size: 12px; color: var(--muted); }
.sabbia-home .media-error { font-size: 12px; color: var(--wine); margin-top: 12px; }
.sabbia-home .calculation-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.sabbia-home .calculation-metrics .area-number, .sabbia-home .quantity-number { font: 48px / 1.2 SabbiaHomeForum, Georgia, serif; margin: 14px 0px 20px; }
.sabbia-home .quantity-number { color: var(--wine); }
.sabbia-home #quantity-result { font-size: 13px; color: var(--muted); }
.sabbia-home .bundle-summary { border-block: 1px solid var(--line); padding: 22px 0px; margin-top: 22px; }
.sabbia-home .bundle-summary h3 { font: 12px / 1.5 SabbiaHomeInter, Arial, sans-serif; text-transform: uppercase; color: var(--muted); }
.sabbia-home #bundle-result { font: 29px / 1.3 SabbiaHomeForum, Georgia, serif; margin-top: 9px; }
.sabbia-home #bundle-total { font-size: 13px; color: var(--muted); margin-top: 8px; }
.sabbia-home .technique-media:fullscreen { width: 100%; height: 100%; background: rgb(32, 30, 29); aspect-ratio: auto; display: flex; justify-content: center; align-items: center; }
.sabbia-home .technique-media:fullscreen video { width: auto; height: 100%; max-width: 100%; object-fit: contain; }
.sabbia-home .technique-media:fullscreen .movement-overlay { width: auto; max-width: 100%; height: 100%; aspect-ratio: 9 / 16; inset: 0px; margin: auto; }
.sabbia-home .technique-media:fullscreen .movement-overlay path { stroke-width: 2px; }
.sabbia-home .technique-media:fullscreen .technique-controls { right: 24px; top: 24px; }
@media (max-width: 1100px) {
  .sabbia-home .change-heading { grid-template-columns: minmax(0px, 1fr) 180px; gap: 30px; }
  .sabbia-home .change-heading h2 { font-size: 48px; }
  .sabbia-home .change-note { font-size: 27px; }
  .sabbia-home .use-grid, .sabbia-home .technique-grid { gap: 18px; }
  .sabbia-home .tools-layout { gap: 42px; }
  .sabbia-home .tools-copy h3 { font-size: 35px; }
  .sabbia-home .preparation-strip { grid-template-columns: 140px minmax(0px, 1fr); gap: 30px; }
  .sabbia-home .preparation-strip > img { width: 140px; }
  .sabbia-home .prep-steps { gap: 22px; }
  .sabbia-home .technique-choice strong { font-size: 24px; }
}
@media (max-width: 900px) {
  .sabbia-home .use-grid, .sabbia-home .technique-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 40px 24px; }
  .sabbia-home .use-grid .item-number { min-height: 0px; }
  .sabbia-home .use-grid h3 { min-height: 0px; }
  .sabbia-home .change-heading { grid-template-columns: 1fr; gap: 20px; }
  .sabbia-home .change-note { font-size: 27px; text-align: left; border: 0px; padding: 0px; max-width: none; }
  .sabbia-home .change-note br { display: none; }
  .sabbia-home .change-note br::after { content: " "; }
  .sabbia-home .tools-layout { gap: 30px; }
  .sabbia-home .preparation-strip { grid-template-columns: 1fr; }
  .sabbia-home .preparation-strip > img { display: none; }
  .sabbia-home .technique-heading { align-items: start; flex-direction: column; gap: 20px; }
}
@media (max-width: 600px) {
  .sabbia-home .change-heading { margin-bottom: 30px; gap: 20px; }
  .sabbia-home .change-heading h2 { font-size: 39px; }
  .sabbia-home .change-intro { font-size: 15px; margin-top: 20px; }
  .sabbia-home .change-note { font-size: 25px; line-height: 1.35; }
  .sabbia-home .change-note br { display: initial; }
  .sabbia-home .use-grid { grid-template-columns: 1fr; gap: 38px; }
  .sabbia-home .story-image { aspect-ratio: 3 / 4; }
  .sabbia-home .use-grid h3 { font-size: 32px; margin-top: 8px; margin-bottom: 12px; }
  .sabbia-home .use-grid p { font-size: 14px; }
  .sabbia-home .use-grid .story-note { font-size: 12px; }
  .sabbia-home .use-grid .item-number { font-size: 10px; margin-top: 20px; }
  .sabbia-home .story-image-note { font-size: 11px; padding: 11px 13px; max-width: 250px; }
  .sabbia-home .story-benefit { padding-top: 18px; font-size: 10px; }
  .sabbia-home .tools-layout { grid-template-columns: 1fr; gap: 32px; }
  .sabbia-home .tools-cutout { max-height: 530px; }
  .sabbia-home .tools-copy h3 { font-size: 35px; }
  .sabbia-home .tools-copy .section-lead { font-size: 21px; }
  .sabbia-home .preparation-strip { padding-top: 30px; margin-top: 30px; }
  .sabbia-home .prep-steps { grid-template-columns: 1fr; gap: 22px; }
  .sabbia-home .prep-steps li { display: grid; grid-template-columns: 30px 1fr; gap: 0px 14px; }
  .sabbia-home .prep-steps li > span { grid-row: 1 / 3; }
  .sabbia-home .prep-steps h4 { margin: 0px 0px 10px; font-size: 15px; }
  .sabbia-home .prep-steps p { font-size: 13px; }
  .sabbia-home .technique-grid { grid-template-columns: 1fr; gap: 34px; }
  .sabbia-home .technique-media { margin-inline: auto; width: min(100%, 365.625px); }
  .sabbia-home .technique-controls .icon-button { width: 44px; height: 44px; flex-basis: 44px; padding: 12px; }
  .sabbia-home .technique-choice strong { font-size: 29px; }
  .sabbia-home .technique-choice > span > span { font-size: 14px; }
  .sabbia-home .technique-bottom { flex-direction: column; align-items: start; gap: 12px; }
  .sabbia-home .arrows-switch { font-size: 13px; }
  .sabbia-home .calculation-metrics { gap: 16px; }
  .sabbia-home .calculation-metrics .area-number, .sabbia-home .quantity-number { font-size: 38px; }
}
@media (max-width: 360px) {
  .sabbia-home .change-heading h2 { font-size: 34px; }
  .sabbia-home .tools-copy h3 { font-size: 31px; }
}
@media (prefers-reduced-motion: reduce) {
  .sabbia-home .movement-overlay { transition: none; }
}
