/* Island page follows the cabinet design system; protected sections have no matching scope. */
.island-redesign > div:first-child { max-width: 1280px; }
.island-redesign .text-center > p { color: #566651; }
.island-intro { background: #fff; }
.island-intro-copy > span { color: #226b34; font-size: 11px; letter-spacing: .17em; }
.island-intro-copy h2 { margin-top: 16px; }
.island-intro-copy .space-y-4 { font-size: 15px; line-height: 1.85; color: #566651; }
.island-intro-copy p { text-align: left; }
.island-intro .lg\:h-\[460px\] { height: 520px; border-radius: 14px; }
.island-intro-copy > a { border-radius: 7px; }
.island-scope { background: #f5f8f1; }
.island-scope .site-content-card { padding: 28px; border: 1px solid #d6e1d2; background: #fff; }
.island-card-number { display: block; margin-bottom: 18px; color: #226b34; font-size: 12px; font-weight: 700; letter-spacing: .1em; }
.island-scope h3 { font-size: 20px; line-height: 1.3; }
.island-scope .site-content-card p { color: #566651; font-size: 14px; line-height: 1.75; }
.island-services .cabinet-service-tile:first-child { grid-column: auto; }
.island-services .cabinet-service-tile:first-child h3 { font-size: 23px; }
.island-services .cabinet-service-tile:first-child .island-card-number { color: #a3eab5; }
.island-services .island-card-number { margin: 0; color: #8a9e83; }
.island-services .cabinet-service-tile:first-child:hover .island-card-number { color: #54714c; }
.island-services .cabinet-service-tile h3 { font-weight: 650; }
.island-benefits { background: #102419; }
.island-benefits h2 { color: #fff; }
.island-benefits .text-center > span { color: #a3eab5; }
.island-benefits .site-content-card { background: #fdfefb; padding: 26px; }
.island-benefits .site-content-card > span { border-radius: 11px; }
.island-benefits .site-content-card h3 { font-size: 18px; }
.island-benefits .site-content-card p { color: #566651; font-size: 13px; line-height: 1.75; }
.island-styles { background: #fff; }
.island-styles .site-content-card h3 { font-size: 19px; }
.island-materials { background: #f5f8f1; }
.island-material-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; margin-top: 36px; }
.island-material-option { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #ccd9c5; border-radius: 14px; background: #fff; box-shadow: 0 6px 20px #14241209; }
.island-material-photo { position: relative; width: 100%; aspect-ratio: 2; background: #e7eee1; }
.island-material-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.island-material-photo .island-card-number { position: absolute; top: 15px; right: 15px; display: grid; place-items: center; width: 36px; height: 36px; margin: 0; border: 1px solid #b5cbae; border-radius: 5px; background: #fbfdf8; color: #226b34; }
.island-material-copy { display: flex; flex-direction: column; flex: 1; padding: 25px; }
.island-material-copy h3 { margin: 0; color: #142411; font-size: 24px; font-weight: 650; line-height: 1.2; letter-spacing: -.03em; }
.island-material-copy p { margin: 14px 0 0; color: #53654b; font-size: 15px; line-height: 1.75; text-align: left; }
.island-material-copy .island-material-fit { margin-top: 20px; padding-top: 17px; border-top: 1px solid #d8e2d1; font-size: 13px; }
.island-material-fit > span { margin-right: 12px; color: #226b34; font-size: 11px; }
.island-material-option:hover { border-color: #92bb87; box-shadow: 0 9px 24px #14241212; }
.island-material-option:hover .island-material-copy { background: #f4faf1; }
.island-sizing { background: #fff; }
.island-sizing .site-content-card { padding: 27px; border-top: 3px solid #226b34; background: #f7faf4; }
.island-sizing h3 { font-size: 20px; }
.island-sizing .site-content-card p { color: #566651; font-size: 14px; line-height: 1.8; }
.island-sizing .site-content-card[style] { background: #eaf4e5; }
.island-reviews { background: #f5f8f1; }
.island-process { background: #102719; }
.island-areas { background: #f5f8f1; }
.island-related { background: #fff; }
@media (max-width: 1023px) {
  .island-scope .grid { grid-template-columns: 1fr; }
  .island-scope .site-content-card { display: grid; grid-template-columns: 35px 1fr; column-gap: 20px; }
  .island-scope .island-card-number { grid-row: span 2; margin-top: 4px; }
  .island-scope .site-content-card p { grid-column: 2; }
  .island-sizing .grid { grid-template-columns: 1fr; }
  .island-material-copy { padding: 22px; }
}
@media (max-width: 640px) {
  .island-material-grid { grid-template-columns: 1fr; gap: 20px; }
  .island-material-photo { aspect-ratio: 1.55; }
  .island-material-copy h3 { font-size: 22px; }
  .island-intro .lg\:h-\[460px\] { height: 320px; }
}
