Bali® Casual Classics® Roman Shades: Patterns & Textures

33% off retail {{ model.price | currency: '$' }} {{ model.salePrice | currency: '$' }} + an extra 15% off use code SHADESFORDAYS at checkout expires 7/24

5 stars from 10 reviews Read reviews Write a review

Blindsgalore Guarantee
 

wide tall x pick your size

Change the size:

  • Visually striking shades with subtle patterns and textures
  • Several high-end, decorator quality fabrics available
  • Elegant folds will create depth and dimension
  • Choose a looped or flat fabric style to match your décor
  • Coordinating valance made with matching fabric is optional

This style is also available in

  • Also available in this style
  • Also available in this style
{{ selection = model.getActiveOption(section.TypeId);"" }}

{{ model.sectionNumber($index) }} Select a room:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{option.Caption}}

{{ model.sectionNumber($index) }} Select a {{section.TypeId == 'trt.swc.alt' ? 'secondary ' : ''}}product color: ({{section.Options.length}} available)

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{selection.Caption }}

{{ selection.Properties.StyleName }} {{ selection.Properties.StyleName ? ' ' : '' }} {{ selection.Properties.Name }}

{{ selection.Properties.Code }}
(add {{ selection.SalePrice | currency: '$' }})

{{items[0].Properties.StyleName}}

{{ swatchOptions = (items | orderBy: ['SortOrder', 'Caption']);"" }}

{{ model.sectionNumber($index) }} True Paint Match

{{ selection = selection || section.Options[0];"" }} {{ paintColorName = selection.Properties.Brand + ' ' + selection.Properties.ColorName;""}}
{{ selection.Caption }}

Your match is

{{paintColorName}}

or match to another paint color

Blindsgalore stands behind their True Paint Matchmaking skills. If you are not 100% satisfied with the color of the shade(s) you receive we will replace it with any other colored True Paint Matchmaker Shade. *

learn more

{{ model.sectionNumber($index) }} Select a {{section.TypeId == 'trt.swc.alt' ? 'secondary ' : ''}}product color: ({{section.Options.length}} available)

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{selection.Caption }}

{{ selection.Properties.StyleName }} {{ selection.Properties.StyleName ? ' ' : '' }} {{ selection.Properties.Name }}

{{ selection.Properties.Code }}
(add {{ selection.SalePrice | currency: '$' }})

{{items[0].Properties.StyleName}}

{{ swatchOptions = (items | orderBy: ['SortOrder', 'Caption']);"" }}

{{ model.sectionNumber($index) }} Select a {{section.TypeName.toLowerCase()}} option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ inputName = !section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ dataKey = section.AllowMultiple ? option.Properties.TypeId : section.TypeId;""}} {{ checkedVal = section.AllowMultiple ? true : option.Id;"" }}
    Best for Kids
    {{ posOpts = (option.Options | filter: model.typeIdContains('.pos'));"" }} {{ hmaOpts = (option.Options | filter: { TypeId: 'hma'}:true);"" }} {{ pwrOpts = (option.Options | filter: { TypeId: 'pwr'}:true);"" }} {{ rmtOpts = (option.Options | filter: { TypeId: 'rmt'}:true);"" }} {{ headrailType = model.data['hrl.typ'];"" }}

{{ model.sectionNumber($index) }} Select a {{section.TypeName.toLowerCase()}} option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ inputName = !section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ dataKey = section.AllowMultiple ? option.Properties.TypeId : section.TypeId;""}} {{ checkedVal = section.AllowMultiple ? true : option.Id;"" }}
    Best for Kids
    {{ posOpts = (option.Options | filter: model.typeIdContains('.pos'));"" }} {{ hmaOpts = (option.Options | filter: { TypeId: 'hma'}:true);"" }} {{ pwrOpts = (option.Options | filter: { TypeId: 'pwr'}:true);"" }} {{ rmtOpts = (option.Options | filter: { TypeId: 'rmt'}:true);"" }} {{ headrailType = model.data['hrl.typ'];"" }}
{{ accentColors = model.getDeepOptions(section.TypeId, 'trt.acc.clr');"" }}

{{ model.sectionNumber($index) }} Select a decorative accent: ({{accentColors.length}} available)

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ activeOptionOverride = model.data['trt.acc.stl'] ? 'trt.acc.stl' : null;""}} {{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }} {{ activeSwatch = model.getActiveOption('trt.swc');"" }} {{ activeAccentColor = model.getActiveOption('trt.acc.clr');"" }}

Shown with {{ activeSwatch.Caption }} swatch

{{ activeAccentColor.Caption }}{{ activeSwatch.Caption }}
    {{ accentStyles = model.getDeepOptions(section.TypeId, 'trt.acc.stl');"" }}
  • {{ inputName = section.TypeId + '_' + $index;"" }}
  • {{ inputName = 'trt.acc.stl_' + $index;"" }} {{ hiddenAccTypeId = section.Options[0].Id;""}}
{{ accentSwatches = (accentColors | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Select a size

{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ checkedVal = section.AllowMultiple ? true : option.Id;"" }} {{ type}}
    {{model.data[items[0].TypeId]=items[0].Id;""}}
    • {{ items[0].Properties.TypeName}}: {{ items[0].Caption }}

    {{items[0].Properties.CaptionSmall}}

    {{items[0].Caption}}
    Best for Kids
    {{ subDataKey = section.AllowMultiple ? option.Properties.TypeId : option.Options[0].TypeId;"" }}
    {{ optc56593fb5fb848209f9d8ffc409af8f0 = (option.Options | orderBy: 'SortOrder');"" }}
{{ widthKeyWhole = 'siz.' + num + '.width_whole';"" }} {{ widthKeyFrac = 'siz.' + num + '.width_fraction';"" }} {{ heightKeyWhole = 'siz.' + num + '.height_whole';"" }} {{ heightKeyFrac = 'siz.' + num + '.height_fraction';"" }}

{{selection.Id == 'hrl.typ.01' ? 'Single' : 'Left'}} Blind

Center Blind

Right Blind

{{ model.sectionNumber($index) }} Your existing window

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}

To best configure your shutter, please tell us about your existing window.

{{ model.sectionNumber($index) }} Select a hem option

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ styleOptions = (option.Options | filter: { TypeId: 'trt.hem.stl'}:true);"" }} {{ rodOptions = (option.Options | filter: { TypeId: 'trt.hem.rod'}:true);"" }} {{ trimOptions = (option.Options | filter: { TypeId: 'trt.hem.trm'}:true);"" }} {{ activeHemStyle = model.getActiveOption('trt.hem.stl');""}} {{ activeHemRod = model.getActiveOption('trt.hem.rod');""}}
    {{ activeHemStyle.Caption }}
    {{ activeHemRod.Caption }}

    • Hem Trim:

    {{ hemTrimOptions = (trimOptions | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Select a pull option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ materialOptions = (option.Options | filter: { TypeId: 'trt.pul.mtr'}:true);"" }} {{ colorOptions = (option.Options | filter: { TypeId: 'trt.pul.clr'}:true);"" }}
    {{model.data['trt.pul.mtr']=materialOptions[0].Id;""}} • Pull Material: {{ materialOptions[0].Caption | raw }}

    • Pull Color:

    {{ pullColorOptions = (colorOptions | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Select a bar option

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ barPlacementOptions = (option.Options | filter: { TypeId: 'trt.bar.plc'}:true);"" }} {{ barColorOptions = (option.Options | filter: { TypeId: 'trt.bar.clr'}:true);"" }} {{ activeBarPlacement = model.getActiveOption('trt.bar.plc');""}} {{ activeBarColor = model.getActiveOption('trt.bar.clr');""}}
    {{model.data['trt.bar.plc']=barPlacementOptions[0].Id;""}}
    • {{ barPlacementOptions[0].Properties.TypeName}}: {{ barPlacementOptions[0].Caption }}

    • Bar Color:

    {{ barColorOptions = (barColorOptions | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Select a heading option

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
{{ prevVal = model.data[section.TypeId];"" }}
  • {{ styleOptions = (option.Options | filter: { TypeId: 'trt.hdg.stl'}:true);"" }} {{ headerOptions = (option.Options | filter: { TypeId: 'trt.hdg.hdr'}:true);"" }} {{ returnOptions = (option.Options | filter: { TypeId: 'trt.hdg.rtn'}:true);"" }} {{ implicitStyle = styleOptions.length == 1 ?styleOptions[0].Id : null;"" }}
    {{model.data['trt.hdg.stl']=styleOptions[0].Id;""}} • Heading Style: {{ styleOptions[0].Caption }}

{{ model.sectionNumber($index) }} Select a {{section.TypeName.toLowerCase()}} option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ checkedVal = section.AllowMultiple ? true : option.Id;"" }} {{ type}}
    {{model.data[items[0].TypeId]=items[0].Id;""}}
    • {{ items[0].Properties.TypeName}}: {{ items[0].Caption }}

    {{items[0].Properties.CaptionSmall}}

    {{items[0].Caption}}
    Best for Kids
    {{ subDataKey = section.AllowMultiple ? option.Properties.TypeId : option.Options[0].TypeId;"" }}
    {{ opt8f0c848475e449d299964950aa31443b = (option.Options | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Select a {{section.TypeName.toLowerCase()}} option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ styleOptions = (option.Options | filter: { TypeId: 'val.stl'}:true);"" }} {{ sizeOptions = (option.Options | filter: { TypeId: 'val.siz'}:true);"" }} {{ endOptions = (option.Options | filter: { TypeId: 'val.end'}:true);"" }} {{ colorOptions = (option.Options | filter: { TypeId: 'val.clr'}:true);"" }}
    {{model.data['val.siz']=sizeOptions[0].Id;""}} • Valance size: {{sizeOptions[0].Caption | raw}}

    • Valance End:

    {{ valanceEndOptions = (endOptions | orderBy: 'SortOrder');"" }}

    • Valance Color:

    {{ valanceColorOptions = (colorOptions | orderBy: 'SortOrder');"" }}

{{ model.sectionNumber($index) }} Optional information:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}

{{ model.sectionNumber($index) }} Select a {{section.TypeName.toLowerCase()}} option:

{{ typeNameDispaly = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} Learn more about {{typeNameDispaly | lowercase}}
{{ swatch = model.getActiveOption('trt.swc');"" }} {{ activeOption = model.getActiveOption(activeOptionOverride) || model.getActiveOption(section.TypeId);""}}
{{ activeOption.Caption }}

{{ model.getActiveOption(section.TypeId).Caption }}

{{ activeOptionOverride = null;"" }}
  • {{ inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ checkedVal = section.AllowMultiple ? true : option.Id;"" }} {{ type}}
    {{model.data[items[0].TypeId]=items[0].Id;""}}
    • {{ items[0].Properties.TypeName}}: {{ items[0].Caption }}

    {{items[0].Properties.CaptionSmall}}

    {{items[0].Caption}}
    Best for Kids
    {{ subDataKey = section.AllowMultiple ? option.Properties.TypeId : option.Options[0].TypeId;"" }}
    {{ opta71ee87896204169b34bc4bbfa27429a = (option.Options | orderBy: 'SortOrder');"" }}
Please address the following errors to continue: You're Done!

Write a Review for Bali® Casual Classics® Roman Shades: Patterns & Textures

Product Rating

Tell other customers about yourself

Include a Photo

Add Photo

Please tell us what you think about Blindsgalore


Customer Reviews of Bali® Casual Classics® Roman Shades: Patterns & Textures

There are no reivews.

Write a Review

{{review.Title}}

By {{review.Nickname}} from {{review.Location}} on {{review.Date | date:"MMMM d, yyyy"}}

read more

Construction
Value
Ease of Installment

Every custom ordered window treatment purchased from Blindsgalore is backed by a factory warranty.

For details on a particular warranty view our warranty page.

How to Install

How to Install

download install guide

Continuous Cord Loop Installation

download install guide

Cord Tensioner

download install guide

Cordless Installation

download install guide

Motorized Installation

download install guide
  • Linen, Plume, Verdant, Fiddlestix, Ravish, Portico, and Dunes styles are light filtering; Damask and Satin stripe styles are room darkening; Terrace styles provides complete blackout
  • Fabric content: 100% polyester with polyester backing
  • Color to street side is neutral
  • Side edges are hemmed and guaranteed not to fray
  • Note: Bottom panel length will vary depending on total shade height - shades of differing heights in the same room may have a different look
  • Backed by a Limited Lifetime Warranty

Specifications

  • Width 17" - 72"
  • Height 18" - 96"
  • Minimum inside-mount depth 3/4"
  • Minimum flush-mount depth 1 7/8"
  • Minimum outside-mount space 11/16"
  • Headrail depth and height 1 9/16" x 11/16"

Please note the following exceptions to the above specifications

Bottom Up/Top Down with Cordlock Lift

  • Width 17" - 72"
  • Height 18" - 72"
  • Minimum inside-mount depth 3/4"
  • Minimum flush-mount depth 1 7/8"
  • Minimum outside-mount space 11/16"
  • Headrail depth and height 1 9/16" x 11/16"

Continuous Cord Loop Lift

  • Width 19" - 72"
  • Height 18" - 96"
  • Minimum inside-mount depth 3/4"
  • Minimum flush-mount depth 2 1/8"
  • Headrail depth and height 2" x 1 1/2"

Cordless Lift

  • Width 19" - 72"
  • Height 18" - 86"
  • Minimum inside-mount depth 3/4"
  • Minimum flush-mount depth 2 1/8"
  • Headrail depth and height 2" x 1 1/2"

Motorized Lift

  • Width 26" - 72"
  • Height 18" - 96"
  • Minimum inside-mount depth 3/4"
  • Minimum flush-mount depth 1 7/8"
  • Minimum outside-mount space 11/16"
  • Headrail depth and height 1 9/16" x 11/16"

Need Help?

Do It Yourself Guides, Expert Advice and Learn About an In-Home Consultation.