@charset "UTF-8";



@font-face {
  font-family: "adventure-tours";
  src:url(//bluesafarimadeira.com/wp-content/themes/adventure-tours/assets/fonts/adventure-tours.eot);
  src:url(//bluesafarimadeira.com/wp-content/themes/adventure-tours/assets/fonts/adventure-tours.eot?#iefix) format("embedded-opentype"),
    url(//bluesafarimadeira.com/wp-content/themes/adventure-tours/assets/fonts/adventure-tours.woff) format("woff"),
    url(//bluesafarimadeira.com/wp-content/themes/adventure-tours/assets/fonts/adventure-tours.ttf) format("truetype"),
    url(//bluesafarimadeira.com/wp-content/themes/adventure-tours/assets/fonts/adventure-tours.svg#adventure-tours) format("svg");
  font-weight: normal;
  font-style: normal;

}

[data-icon]:before {
  font-family: "adventure-tours" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^="td-"]:before,
[class*=" td-"]:before {
  font-family: "adventure-tours" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.td-24-hours:before {
  content: "a";
}
.td-acropolis:before {
  content: "c";
}
.td-american-flag:before {
  content: "d";
}
.td-archery:before {
  content: "e";
}
.td-alarm:before {
  content: "f";
}
.td-alarm-clock:before {
  content: "g";
}
.td-ambulance:before {
  content: "h";
}
.td-angel:before {
  content: "i";
}
.td-apple:before {
  content: "j";
}
.td-arena:before {
  content: "k";
}
.td-atom:before {
  content: "l";
}
.td-backpack:before {
  content: "m";
}
.td-bag:before {
  content: "n";
}
.td-basketball:before {
  content: "o";
}
.td-baseball:before {
  content: "p";
}
.td-barbell:before {
  content: "q";
}
.td-bar-graph-growth:before {
  content: "r";
}
.td-bar-graph-drop:before {
  content: "s";
}
.td-bar-graph-2:before {
  content: "t";
}
.td-bar-graph-1:before {
  content: "u";
}
.td-banknote:before {
  content: "v";
}
.td-bank:before {
  content: "w";
}
.td-bank-card:before {
  content: "x";
}
.td-bank-1:before {
  content: "y";
}
.td-balloon:before {
  content: "z";
}
.td-baggage:before {
  content: "A";
}
.td-basketball-hoop:before {
  content: "B";
}
.td-bow-and-arrow:before {
  content: "C";
}
.td-burger:before {
  content: "D";
}
.td-cat:before {
  content: "F";
}
.td-church:before {
  content: "G";
}
.td-cocktail:before {
  content: "H";
}
.td-cross:before {
  content: "I";
}
.td-earth:before {
  content: "J";
}
.td-film:before {
  content: "K";
}
.td-gingerbread-man:before {
  content: "L";
}
.td-heart:before {
  content: "M";
}
.td-house-1:before {
  content: "N";
}
.td-lifebuoy:before {
  content: "O";
}
.td-marker-location-2:before {
  content: "P";
}
.td-network:before {
  content: "Q";
}
.td-panda:before {
  content: "R";
}
.td-photocamera-3:before {
  content: "S";
}
.td-plate:before {
  content: "T";
}
.td-rain-thunder:before {
  content: "U";
}
.td-santa-hat:before {
  content: "V";
}
.td-ship-1:before {
  content: "W";
}
.td-sleigh-1:before {
  content: "X";
}
.td-snowman:before {
  content: "Y";
}
.td-sun-rain:before {
  content: "Z";
}
.td-tooth:before {
  content: "0";
}
.td-umbrella:before {
  content: "1";
}
.td-watch-1:before {
  content: "2";
}
.td-wreath:before {
  content: "3";
}
.td-search-1:before {
  content: "4";
}
.td-watch-2:before {
  content: "5";
}
.td-usb:before {
  content: "6";
}
.td-tower-bridge:before {
  content: "7";
}
.td-surf:before {
  content: "8";
}
.td-soccer-ball:before {
  content: "9";
}
.td-sleigh-2:before {
  content: "!";
}
.td-ship-2:before {
  content: "\"";
}
.td-sants-claus:before {
  content: "#";
}
.td-reindeer:before {
  content: "$";
}
.td-play-film:before {
  content: "%";
}
.td-pie-chart-1:before {
  content: "&";
}
.td-paper:before {
  content: "'";
}
.td-newspaper:before {
  content: "(";
}
.td-marker-location-3:before {
  content: ")";
}
.td-light-rain:before {
  content: "*";
}
.td-house-2:before {
  content: "+";
}
.td-heart-1:before {
  content: ",";
}
.td-glass:before {
  content: "-";
}
.td-firework:before {
  content: ".";
}
.td-egg-1:before {
  content: "/";
}
.td-cross-1:before {
  content: ":";
}
.td-coffee:before {
  content: ";";
}
.td-clear-day:before {
  content: "<";
}
.td-cemetery:before {
  content: "=";
}
.td-candle-1:before {
  content: ">";
}
.td-bus-1:before {
  content: "?";
}
.td-bowling-pin:before {
  content: "@";
}
.td-bat:before {
  content: "[";
}
.td-beach:before {
  content: "]";
}
.td-brandenburg-gate:before {
  content: "^";
}
.td-bus-2:before {
  content: "_";
}
.td-bush-al-arab:before {
  content: "`";
}
.td-bear:before {
  content: "{";
}
.td-bread:before {
  content: "|";
}
.td-briefcase:before {
  content: "}";
}
.td-bee:before {
  content: "~";
}
.td-beer:before {
  content: "\\";
}
.td-briefcase-1:before {
  content: "\e000";
}
.td-browser:before {
  content: "\e001";
}
.td-bible:before {
  content: "\e002";
}
.td-bicycle:before {
  content: "\e003";
}
.td-building-1:before {
  content: "\e004";
}
.td-building-2:before {
  content: "\e005";
}
.td-big-ben:before {
  content: "\e006";
}
.td-bluetooth:before {
  content: "\e007";
}
.td-building-office:before {
  content: "\e008";
}
.td-bulb:before {
  content: "\e009";
}
.td-book:before {
  content: "\e00a";
}
.td-bulb-1:before {
  content: "\e00b";
}
.td-bookmark:before {
  content: "\e00c";
}
.td-bottle:before {
  content: "\e00d";
}
.td-bulb-2:before {
  content: "\e00e";
}
.td-calendar-month:before {
  content: "\e00f";
}
.td-calendar-date:before {
  content: "\e010";
}
.td-calendar-date-1:before {
  content: "\e011";
}
.td-calendar:before {
  content: "\e012";
}
.td-calendar-1:before {
  content: "\e013";
}
.td-calculator:before {
  content: "\e014";
}
.td-cake:before {
  content: "\e015";
}
.td-butterfly:before {
  content: "\e016";
}
.td-candle-2:before {
  content: "\e017";
}
.td-cableway:before {
  content: "\e018";
}
.td-witch-hat:before {
  content: "b";
}
.td-windsurf:before {
  content: "\e019";
}
.td-wine:before {
  content: "\e01a";
}
.td-wind-rain:before {
  content: "\e01b";
}
.td-wind-hail:before {
  content: "\e01c";
}
.td-wind:before {
  content: "\e01d";
}
.td-wifi:before {
  content: "\e01e";
}
.td-whiskey:before {
  content: "\e01f";
}
.td-wheat:before {
  content: "\e020";
}
.td-wheelchair-1:before {
  content: "\e021";
}
.td-wheelchair-2:before {
  content: "\e022";
}
.td-user-2:before {
  content: "\e023";
}
.td-user:before {
  content: "\e024";
}
.td-user-1:before {
  content: "\e025";
}
.td-user-3:before {
  content: "\e026";
}
.td-users:before {
  content: "\e027";
}
.td-videocamera-1:before {
  content: "\e028";
}
.td-videocamera-2:before {
  content: "\e029";
}
.td-videocamera-3:before {
  content: "\e02a";
}
.td-wallet-1:before {
  content: "\e02b";
}
.td-wallet-2:before {
  content: "\e02c";
}
.td-volume:before {
  content: "\e02d";
}
.td-tv:before {
  content: "\e02e";
}
.td-trum-2:before {
  content: "\e02f";
}
.td-turtle:before {
  content: "\e030";
}
.td-trum-1:before {
  content: "\e031";
}
.td-truck-2:before {
  content: "\e032";
}
.td-truck-1:before {
  content: "\e033";
}
.td-tree:before {
  content: "\e034";
}
.td-trash:before {
  content: "\e035";
}
.td-train-2:before {
  content: "\e036";
}
.td-train-1:before {
  content: "\e037";
}
.td-trailer:before {
  content: "\e038";
}
.td-swimfin:before {
  content: "\e039";
}
.td-tag:before {
  content: "\e03a";
}
.td-taj-mahal:before {
  content: "\e03b";
}
.td-targeting:before {
  content: "\e03c";
}
.td-tea:before {
  content: "\e03d";
}
.td-tennis-raket:before {
  content: "\e03e";
}
.td-tent:before {
  content: "\e03f";
}
.td-thunder:before {
  content: "\e041";
}
.td-ticket:before {
  content: "\e042";
}
.td-tipi:before {
  content: "\e043";
}
.td-sun-cloud:before {
  content: "\e044";
}
.td-submarine:before {
  content: "\e045";
}
.td-strawberry:before {
  content: "\e046";
}
.td-stocking:before {
  content: "\e047";
}
.td-stemware:before {
  content: "\e048";
}
.td-star:before {
  content: "\e049";
}
.td-star-1:before {
  content: "\e04a";
}
.td-st-basils-cathedral:before {
  content: "\e04b";
}
.td-spider:before {
  content: "\e04c";
}
.td-sphinx:before {
  content: "\e04d";
}
.td-speedometer:before {
  content: "\e04e";
}
.td-slice-of-orange:before {
  content: "\e04f";
}
.td-small-humidity:before {
  content: "\e050";
}
.td-small-mist:before {
  content: "\e051";
}
.td-snake:before {
  content: "\e052";
}
.td-snorkel:before {
  content: "\e053";
}
.td-snow:before {
  content: "\e054";
}
.td-snowflake-1:before {
  content: "\e055";
}
.td-snowflake-2:before {
  content: "\e056";
}
.td-snowflake-3:before {
  content: "\e057";
}
.td-snowflake-4:before {
  content: "\e058";
}
.td-snowflake-5:before {
  content: "\e059";
}
.td-sleet:before {
  content: "\e05a";
}
.td-skiing:before {
  content: "\e05b";
}
.td-skateboard:before {
  content: "\e05c";
}
.td-signpost-3:before {
  content: "\e05d";
}
.td-signpost-2:before {
  content: "\e05e";
}
.td-signpost-1:before {
  content: "\e05f";
}
.td-signal-1:before {
  content: "\e060";
}
.td-shopping-bag-2:before {
  content: "\e061";
}
.td-shopping-bag-1:before {
  content: "\e062";
}
.td-shop-1:before {
  content: "\e064";
}
.td-satellite:before {
  content: "\e065";
}
.td-sausage-1:before {
  content: "\e066";
}
.td-sausage-2:before {
  content: "\e063";
}
.td-scorpion:before {
  content: "\e067";
}
.td-scuba-1:before {
  content: "\e068";
}
.td-scuba-2:before {
  content: "\e069";
}
.td-settings-1:before {
  content: "\e06a";
}
.td-settings-2:before {
  content: "\e06b";
}
.td-sheep:before {
  content: "\e06c";
}
.td-sheep-wheel:before {
  content: "\e06d";
}
.td-shinto-shrine:before {
  content: "\e06e";
}
.td-sale-3:before {
  content: "\e06f";
}
.td-sale-2:before {
  content: "\e070";
}
.td-sale-1:before {
  content: "\e071";
}
.td-sailboat:before {
  content: "\e072";
}
.td-sailboat-1:before {
  content: "\e073";
}
.td-rugby-ball:before {
  content: "\e074";
}
.td-rose:before {
  content: "\e075";
}
.td-rollerblade:before {
  content: "\e076";
}
.td-rocket:before {
  content: "\e077";
}
.td-rings:before {
  content: "\e078";
}
.td-ribbon:before {
  content: "\e079";
}
.td-plug-1:before {
  content: "\e07a";
}
.td-plug-2:before {
  content: "\e07b";
}
.td-presentation-1:before {
  content: "\e07c";
}
.td-presentation-2:before {
  content: "\e07d";
}
.td-presentation-3:before {
  content: "\e07e";
}
.td-printer:before {
  content: "\e080";
}
.td-pumpkin-1:before {
  content: "\e081";
}
.td-pumpkin-2:before {
  content: "\e082";
}
.td-pyramids:before {
  content: "\e083";
}
.td-rabbit:before {
  content: "\e084";
}
.td-plane-2:before {
  content: "\e085";
}
.td-plane-1:before {
  content: "\e086";
}
.td-pizza:before {
  content: "\e087";
}
.td-candy-cane-1:before {
  content: "E";
}
.td-candy:before {
  content: "\e088";
}
.td-candy-cane-2:before {
  content: "\e089";
}
.td-capitol:before {
  content: "\e08a";
}
.td-car-1:before {
  content: "\e08b";
}
.td-car-2:before {
  content: "\e08c";
}
.td-cards-clubs:before {
  content: "\e08d";
}
.td-castle-1:before {
  content: "\e08e";
}
.td-castle-2:before {
  content: "\e08f";
}
.td-castle-3:before {
  content: "\e090";
}
.td-church-1:before {
  content: "\e091";
}
.td-christmas-tree-2:before {
  content: "\e092";
}
.td-cloudy-rain:before {
  content: "\e093";
}
.td-croissant:before {
  content: "\e094";
}
.td-cricket:before {
  content: "\e095";
}
.td-drink:before {
  content: "\e096";
}
.td-earphones-microphone:before {
  content: "\e097";
}
.td-ferris-wheel:before {
  content: "\e098";
}
.td-female:before {
  content: "\e099";
}
.td-gift-6:before {
  content: "\e09a";
}
.td-gift-wrap:before {
  content: "\e09b";
}
.td-hail-snow:before {
  content: "\e09c";
}
.td-hail-warning:before {
  content: "\e09d";
}
.td-hour-glass-2:before {
  content: "\e09e";
}
.td-hour-glass-1:before {
  content: "\e09f";
}
.td-laptop:before {
  content: "\e0a0";
}
.td-lemon:before {
  content: "\e0a1";
}
.td-marker-location-1:before {
  content: "\e0a2";
}
.td-marker:before {
  content: "\e0a3";
}
.td-mushroom:before {
  content: "\e0a4";
}
.td-network-1:before {
  content: "\e0a5";
}
.td-palm:before {
  content: "\e0a6";
}
.td-paddles:before {
  content: "\e0a7";
}
.td-photocamera-1:before {
  content: "\e0a8";
}
.td-photocamera-2:before {
  content: "\e0a9";
}
.td-photo-man:before {
  content: "\e0aa";
}
.td-photo-landscape:before {
  content: "\e0ab";
}
.td-photo:before {
  content: "\e0ac";
}
.td-pin:before {
  content: "\e0ad";
}
.td-ping-pong:before {
  content: "\e0ae";
}
.td-pill:before {
  content: "\e0af";
}
.td-piggy-bank:before {
  content: "\e0b0";
}
.td-pig-1:before {
  content: "\e0b1";
}
.td-piece-of-cake:before {
  content: "\e0b2";
}
.td-pie-chart-3:before {
  content: "\e0b3";
}
.td-pie-chart-2:before {
  content: "\e0b4";
}
.td-passport:before {
  content: "\e0b5";
}
.td-pencil-1:before {
  content: "\e0b6";
}
.td-pencil-2:before {
  content: "\e0b7";
}
.td-petronas-towers:before {
  content: "\e0b8";
}
.td-phone:before {
  content: "\e0b9";
}
.td-ornament-5:before {
  content: "\e0bb";
}
.td-ornament-4:before {
  content: "\e0bc";
}
.td-ornament-3:before {
  content: "\e0bd";
}
.td-ornament-2:before {
  content: "\e0be";
}
.td-ornament-1:before {
  content: "\e0bf";
}
.td-orange:before {
  content: "\e0c0";
}
.td-onion:before {
  content: "\e0c1";
}
.td-nurse:before {
  content: "\e0c2";
}
.td-note:before {
  content: "\e0c3";
}
.td-martini:before {
  content: "\e0c4";
}
.td-medal:before {
  content: "\e0c5";
}
.td-megaphone:before {
  content: "\e0c6";
}
.td-microphone:before {
  content: "\e0c7";
}
.td-mist:before {
  content: "\e0c8";
}
.td-moneybag:before {
  content: "\e0c9";
}
.td-mountains:before {
  content: "\e0ca";
}
.td-mouse:before {
  content: "\e0cb";
}
.td-mesoamerican-pyramids:before {
  content: "\e0cc";
}
.td-cock:before {
  content: "\e0cd";
}
.td-certificate:before {
  content: "\e0ce";
}
.td-clear-night:before {
  content: "\e0cf";
}
.td-compass:before {
  content: "\e0d0";
}
.td-cuckoo-clock:before {
  content: "\e0d1";
}
.td-egg-2:before {
  content: "\e0d2";
}
.td-fish:before {
  content: "\e0d3";
}
.td-glasses:before {
  content: "\e0d4";
}
.td-heart-couple:before {
  content: "\e0d5";
}
.td-humidity:before {
  content: "\e0d6";
}
.td-light-snow:before {
  content: "\e0d7";
}
.td-ice-cream:before {
  content: "\e0d8";
}
.td-link:before {
  content: "\e0d9";
}
.td-lion:before {
  content: "\e0da";
}
.td-ice-cream-2:before {
  content: "\e0db";
}
.td-heavy-rain:before {
  content: "\e0dc";
}
.td-heart-pulse:before {
  content: "\e0dd";
}
.td-globe:before {
  content: "\e0de";
}
.td-golf:before {
  content: "\e0df";
}
.td-foot:before {
  content: "\e0e0";
}
.td-flag:before {
  content: "\e0e1";
}
.td-egg-3:before {
  content: "\e0e2";
}
.td-eiffel-tower:before {
  content: "\e0e3";
}
.td-cutlery:before {
  content: "\e0e4";
}
.td-cup:before {
  content: "\e0e5";
}
.td-compass-1:before {
  content: "\e0e6";
}
.td-compass-2:before {
  content: "\e0e7";
}
.td-clipboard:before {
  content: "\e0e8";
}
.td-cleat:before {
  content: "\e0e9";
}
.td-champagne:before {
  content: "\e0ea";
}
.td-champion:before {
  content: "\e0eb";
}
.td-cheese:before {
  content: "\e0ec";
}
.td-clock-1:before {
  content: "\e0ed";
}
.td-computer-1:before {
  content: "\e0ee";
}
.td-diamond:before {
  content: "\e0ef";
}
.td-email-1:before {
  content: "\e0f0";
}
.td-footprint:before {
  content: "\e0f1";
}
.td-graduation-cap:before {
  content: "\e0f2";
}
.td-heavy-rain-snow:before {
  content: "\e0f3";
}
.td-ice-skate:before {
  content: "\e0f4";
}
.td-lock:before {
  content: "\e0f5";
}
.td-lollipop:before {
  content: "\e0f6";
}
.td-image:before {
  content: "\e0f7";
}
.td-heavy-snow:before {
  content: "\e0f8";
}
.td-grape:before {
  content: "\e0f9";
}
.td-gift:before {
  content: "\e0fa";
}
.td-email-2:before {
  content: "\e0fb";
}
.td-diamond-ring:before {
  content: "\e0fc";
}
.td-computer-2:before {
  content: "\e0fd";
}
.td-clock-2:before {
  content: "\e0fe";
}
.td-chef-hat:before {
  content: "\e0ff";
}
.td-cherry:before {
  content: "\e100";
}
.td-clock-3:before {
  content: "\e101";
}
.td-contacts:before {
  content: "\e102";
}
.td-directions-1:before {
  content: "\e103";
}
.td-email-3:before {
  content: "\e104";
}
.td-gift-2:before {
  content: "\e105";
}
.td-graph:before {
  content: "\e106";
}
.td-helicopter:before {
  content: "\e107";
}
.td-kayak:before {
  content: "\e108";
}
.td-lounge-chair:before {
  content: "\e109";
}
.td-male:before {
  content: "\e10a";
}
.td-key-1:before {
  content: "\e10b";
}
.td-hockey:before {
  content: "\e10c";
}
.td-graph-growth:before {
  content: "\e10d";
}
.td-gift-3:before {
  content: "\e10e";
}
.td-email-send:before {
  content: "\e10f";
}
.td-directions-2:before {
  content: "\e110";
}
.td-couple:before {
  content: "\e111";
}
.td-cloud-thunder:before {
  content: "\e112";
}
.td-chicken:before {
  content: "\e113";
}
.td-christ-the-redeemer:before {
  content: "\e114";
}
.td-cloud-wind:before {
  content: "\e115";
}
.td-court:before {
  content: "\e116";
}
.td-doctor:before {
  content: "\e117";
}
.td-eye:before {
  content: "\e118";
}
.td-gift-4:before {
  content: "\e119";
}
.td-hagia-sophia:before {
  content: "\e11a";
}
.td-hot-air:before {
  content: "\e11b";
}
.td-key-2:before {
  content: "\e11c";
}
.td-map:before {
  content: "\e11d";
}
.td-map-marker:before {
  content: "\e11e";
}
.td-key-3:before {
  content: "\e11f";
}
.td-hotel:before {
  content: "\e120";
}
.td-hail:before {
  content: "\e121";
}
.td-gift-5:before {
  content: "\e122";
}
.td-eye-1:before {
  content: "\e123";
}
.td-dog:before {
  content: "\e124";
}
.td-cow:before {
  content: "\e125";
}
.td-cloudy:before {
  content: "\e126";
}
.td-christmas-tree-1:before {
  content: "\e127";
}
.td-barbell-2:before {
  content: "\e12c";
}
.td-thermometer:before {
  content: "\e040";
}
.td-price-tag:before {
  content: "\e128";
}
.td-calendar-2:before {
  content: "\e129";
}
.td-photocamera-4:before {
  content: "\e12a";
}
.td-photocamera-5:before {
  content: "\e12b";
}
.td-chat:before {
  content: "\e12d";
}
.td-banknote-1:before {
  content: "\e12e";
}
.td-earth-1:before {
  content: "\e12f";
}
.td-heart-3:before {
  content: "\e130";
}
.td-phone-1:before {
  content: "\e132";
}
.td-search:before {
  content: "\e133";
}
.td-photo-1:before {
  content: "\e134";
}
.td-user-plus:before {
  content: "\e07f";
}
.td-user-minus:before {
  content: "\e0ba";
}
.td-circle-plus:before {
  content: "\e131";
}
.td-circle-minus:before {
  content: "\e135";
}.lg-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'SunshineIcons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-next,
.lg-prev {
  /*background-color: rgba(0, 0, 0, 0.45);*/
  border-radius: 2px;
  color: var(--sunshine--dark);
  background: transparent;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 99084;
  outline: none;
  border: none;
}

.lg-next.disabled,
.lg-prev.disabled {
  opacity: 0 !important;
  cursor: default;
}

.lg-next:hover:not(.disabled),
.lg-prev:hover:not(.disabled),
.lg-next:focus:not(.disabled),
.lg-prev:focus:not(.disabled) {
  /*color: #fff;*/
  background: none;
  color: var(--sunshine--gray);
}

.lg-single-item .lg-next, .lg-single-item
.lg-prev {
  display: none;
}

.lg-next {
  right: 20px;
}

.lg-next:before {
  content: '\f115';
}

.lg-prev {
  left: 20px;
}

.lg-prev:after {
  content: '\f136';
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-moz-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-ms-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@-moz-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@-ms-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
  -o-animation: lg-right-end 0.3s;
  animation: lg-right-end 0.3s;
  position: relative;
}

.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
  -o-animation: lg-left-end 0.3s;
  animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 99082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px 20px;
  padding: 10px 30px;
}

.lg-media-overlap .lg-toolbar {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
}

.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  /*float: right;*/
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  /*width: 50px;*/
  text-decoration: none !important;
  outline: medium none;
  will-change: color;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
  background: none;
  border: none;
  box-shadow: none;
}

.lg-toolbar .lg-icon.lg-icon-18 {
  font-size: 18px;
}

.lg-toolbar .lg-icon:hover {
  color: #666;
}

.lg-toolbar .lg-close { order: 999; }
.lg-toolbar .lg-close:after {
  content: '\f11b';
}

.lg-toolbar .lg-maximize {
  font-size: 22px;
}

.lg-toolbar .lg-maximize:after {
  content: '\e90a';
}

.lg-toolbar .lg-download:after {
  content: '\f107';
}
.lg-toolbar .sunshine--mini-cart { order: 997; }
.lg-toolbar .sunshine--mini-cart a { border: 1px solid var(--sunshine--medium-gray); color: var( --sunshine--dark-gray); font-weight: normal; border-radius: 3px; font-size: 13px; padding: 7px 15px; text-decoration: none; }
.lg-toolbar .sunshine--mini-cart--empty { display: none; }

.lg-sub-html {
  color: #666;
  font-size: 16px;
  padding: 10px 40px;
  text-align: center;
  z-index: 99080;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
}

.lg-sub-html h4 {
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}

.lg-sub-html p {
  font-size: 12px;
  margin: 5px 0 0;
}

.lg-sub-html a {
  color: inherit;
}

.lg-sub-html a:hover {
  text-decoration: underline;
}

.lg-media-overlap .lg-sub-html {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}

.lg-item .lg-sub-html {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

.lg-error-msg {
  font-size: 14px;
  color: #999;
}

.lg-counter {
	order: 1;
	flex-grow: 999;
  	color: #999;
  	font-size: 16px;
}

.lg-closing .lg-toolbar,
.lg-closing .lg-prev,
.lg-closing .lg-next,
.lg-closing .lg-sub-html {
  opacity: 0;
  -webkit-transition: -webkit-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -moz-transition: -moz-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -o-transition: -o-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  transition: transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-video-cont {
  opacity: 0;
  -moz-transform: scale3d(0.5, 0.5, 0.5);
  -o-transform: scale3d(0.5, 0.5, 0.5);
  -ms-transform: scale3d(0.5, 0.5, 0.5);
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -moz-transition: -moz-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -o-transition: -o-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-video-cont {
  opacity: 1;
  -moz-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}

.lg-icon:focus-visible {
  color: #fff;
  border-radius: 3px;
  outline: 1px dashed rgba(255, 255, 255, 0.6);
}

.lg-toolbar .lg-icon:focus-visible {
  border-radius: 8px;
  outline-offset: -5px;
}

.lg-outer .lg-thumb-outer {
  /*background-color: #FFF;**/
  width: 100%;
  max-height: 350px;
  overflow: hidden;
  float: left;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-outer .lg-thumb-outer.lg-rebuilding-thumbnails .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-middle {
  text-align: center;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-left {
  text-align: left;
}

.lg-outer .lg-thumb-outer.lg-thumb-align-right {
  text-align: right;
}

.lg-outer.lg-single-item .lg-thumb-outer {
  display: none;
}

.lg-outer .lg-thumb {
  padding: 5px 0;
  height: 100%;
  margin-bottom: -5px;
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .lg-outer .lg-thumb {
    padding: 10px 0;
  }
}

.lg-outer .lg-thumb-item {
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border-radius: 2px;
  margin-bottom: 5px;
  will-change: border-color;
}

@media (min-width: 768px) {
  .lg-outer .lg-thumb-item {
    border-radius: 4px;
    border: 2px solid #fff;
    -webkit-transition: border-color 0.25s ease;
    -o-transition: border-color 0.25s ease;
    transition: border-color 0.25s ease;
  }
}

.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
  border-color: #a90707;
}

.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}

.lg-outer .lg-toggle-thumb:after {
  content: '\e1ff';
}

.lg-outer.lg-animate-thumb .lg-thumb {
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.lg-outer .lg-video-cont {
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}

.lg-outer .lg-video-cont .lg-object {
  width: 100% !important;
  height: 100% !important;
}

.lg-outer .lg-has-iframe .lg-video-cont {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
}

.lg-outer .lg-video-object {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  z-index: 3;
}

.lg-outer .lg-video-poster {
  z-index: 99;
}

.lg-outer .lg-has-video .lg-video-object {
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}

.lg-outer .lg-has-video.lg-video-loaded .lg-video-poster,
.lg-outer .lg-has-video.lg-video-loaded .lg-video-play-button {
  opacity: 0 !important;
}

.lg-outer .lg-has-video.lg-video-loaded .lg-video-object {
  opacity: 1;
}

@keyframes lg-play-stroke {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes lg-play-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.lg-video-play-button {
  width: 18%;
  max-width: 140px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  cursor: pointer;
  transform: translate(-50%, -50%) scale(1);
  will-change: opacity, transform;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -o-transition: -o-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  transition: transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
}

.lg-video-play-button:hover .lg-video-play-icon-bg,
.lg-video-play-button:hover .lg-video-play-icon {
  opacity: 1;
}

.lg-video-play-icon-bg {
  fill: none;
  stroke-width: 3%;
  stroke: #fcfcfc;
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}

.lg-video-play-icon-circle {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  fill: none;
  stroke-width: 3%;
  stroke: rgba(30, 30, 30, 0.9);
  stroke-opacity: 1;
  stroke-linecap: round;
  stroke-dasharray: 200;
  stroke-dashoffset: 200;
}

.lg-video-play-icon {
  position: absolute;
  width: 25%;
  max-width: 120px;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}

.lg-video-play-icon .lg-video-play-icon-inner {
  fill: #fcfcfc;
}

.lg-video-loading .lg-video-play-icon-circle {
  animation: lg-play-rotate 2s linear 0.25s infinite, lg-play-stroke 1.5s ease-in-out 0.25s infinite;
}

.lg-video-loaded .lg-video-play-button {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.7);
}

.lg-progress-bar {
  background-color: var(--sunshine--medium-gray);
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 99083;
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.08s ease 0s;
  -moz-transition: opacity 0.08s ease 0s;
  -o-transition: opacity 0.08s ease 0s;
  transition: opacity 0.08s ease 0s;
}

.lg-progress-bar .lg-progress {
  background-color: var(--sunshine--gray);
  height: 5px;
  width: 0;
}

.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}

.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: '\f13b';
}

.lg-show-autoplay .lg-autoplay-button:after {
  content: '\f13e';
}

.lg-single-item .lg-autoplay-button {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap,
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transition-duration: 0ms !important;
  transition-duration: 0ms !important;
}

.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
}

.lg-outer.lg-use-transition-for-zoom.lg-zoom-drag-transition .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.no-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.no-transition {
  transition: none !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition {
  transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0px) !important;
  max-width: none !important;
  max-height: none !important;
  top: 50% !important;
  left: 50% !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-x,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-x {
  transform: scale3d(1, 1, 1) translate3d(-50%, 0, 0px) !important;
  top: 0 !important;
  left: 50% !important;
  max-width: none !important;
  max-height: none !important;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-y,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-y {
  transform: scale3d(1, 1, 1) translate3d(0, -50%, 0px) !important;
  top: 50% !important;
  left: 0% !important;
  max-width: none !important;
  max-height: none !important;
}

.lg-zoom-in, .lg-zoom-out { order: 20; }
.lg-autoplay-button { order: 30; }
.lg-fullscreen { order: 40; }
.lg-favorite { order: 50; }
.lg-comments { order: 55; }
.lg-share { order: 60; }

.lg-icon.lg-zoom-in:after {
  content: '\f139';
}

.lg-actual-size .lg-icon.lg-zoom-in {
  opacity: 0.5;
  pointer-events: none;
}

.lg-icon.lg-actual-size {
  font-size: 20px;
}

.lg-icon.lg-actual-size:after {
  content: '\e033';
}

.lg-icon.lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}

.lg-icon.lg-zoom-out:after {
  content: '\f141';
}

.lg-zoomed .lg-icon.lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer[data-lg-slide-type='video'] .lg-zoom-in,
.lg-outer[data-lg-slide-type='video'] .lg-actual-size,
.lg-outer[data-lg-slide-type='video'] .lg-zoom-out, .lg-outer[data-lg-slide-type='iframe'] .lg-zoom-in,
.lg-outer[data-lg-slide-type='iframe'] .lg-actual-size,
.lg-outer[data-lg-slide-type='iframe'] .lg-zoom-out, .lg-outer.lg-first-slide-loading .lg-zoom-in,
.lg-outer.lg-first-slide-loading .lg-actual-size,
.lg-outer.lg-first-slide-loading .lg-zoom-out {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-pager-outer {
  text-align: center;
  z-index: 99080;
  height: 10px;
  margin-bottom: 10px;
}

.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}

.lg-outer.lg-single-item .lg-pager-outer {
  display: none;
}

.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}

.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  box-shadow: 0 0 0 2px white inset;
}

.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #fff;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  will-change: transform, opacity;
  -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  -moz-transition: opacity 0.15s ease 0s, -moz-transform 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s, -o-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
}

.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}

.lg-outer .lg-pager {
  background-color: rgba(0,0,0, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(0,0,0, 0.7) inset;
  display: block;
  height: 12px;
  -webkit-transition: box-shadow 0.3s ease 0s;
  -o-transition: box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s;
  width: 12px;
}

.lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus {
  box-shadow: 0 0 0 8px white inset;
}

.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\f13f";
}

.lg-fullscreen-on .lg-fullscreen:after {
  content: "\f140";
}

.lg-favorite:after {
  content: "\f101";
}
.lg-favorite.is-favorite:after {
  content: "\f102";
}

.lg-comments:after {
  content: "\f110";
}

.lg-share:after {
  content: "\f108";
}

.lg-toolbar #sunshine--lightbox--add-to-cart { order: 998; }
.lg-toolbar #sunshine--lightbox--add-to-cart:before { content: "\f14b"; font-family: "SunshineIcons"; display: inline-block; margin-right: 5px; }
.lg-toolbar .lg-download { order: 70; }

.lg-outer .lg-img-rotate {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer[data-lg-slide-type='video'] .lg-rotate-left,
.lg-outer[data-lg-slide-type='video'] .lg-rotate-right,
.lg-outer[data-lg-slide-type='video'] .lg-flip-ver,
.lg-outer[data-lg-slide-type='video'] .lg-flip-hor, .lg-outer[data-lg-slide-type='iframe'] .lg-rotate-left,
.lg-outer[data-lg-slide-type='iframe'] .lg-rotate-right,
.lg-outer[data-lg-slide-type='iframe'] .lg-flip-ver,
.lg-outer[data-lg-slide-type='iframe'] .lg-flip-hor {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-img-rotate:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.lg-rotate-left:after {
  content: '\e900';
}

.lg-rotate-right:after {
  content: '\e901';
}

.lg-icon.lg-flip-hor, .lg-icon.lg-flip-ver {
  font-size: 26px;
}

.lg-flip-ver:after {
  content: '\e903';
}

.lg-flip-hor:after {
  content: '\e902';
}

.lg-medium-zoom-item {
  cursor: zoom-in;
}

.lg-medium-zoom .lg-outer {
  cursor: zoom-out;
}

.lg-medium-zoom .lg-outer.lg-grab img.lg-object {
  cursor: zoom-out;
}

.lg-medium-zoom .lg-outer.lg-grabbing img.lg-object {
  cursor: zoom-out;
}

.lg-relative-caption .lg-outer .lg-sub-html {
  white-space: normal;
  bottom: auto;
  padding: 0;
  background-image: none;
}

.lg-relative-caption .lg-outer .lg-relative-caption-item {
  opacity: 0;
  padding: 16px 0;
  transition: 0.5s opacity ease;
}

.lg-relative-caption .lg-outer .lg-show-caption .lg-relative-caption-item {
  opacity: 1;
}

.lg-group:after {
  content: '';
  display: table;
  clear: both;
}

.lg-container {
  display: none;
  outline: none;
}

.lg-container.lg-show {
  display: block;
}

.lg-on {
  scroll-behavior: unset;
}

.lg-overlay-open {
  overflow: hidden;
}

.lg-toolbar,
.lg-prev,
.lg-next,
.lg-pager-outer,
.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-show-in .lg-toolbar,
.lg-show-in .lg-prev,
.lg-show-in .lg-next,
.lg-show-in .lg-pager-outer {
  opacity: 1;
}

.lg-show-in.lg-hide-sub-html .lg-sub-html {
  opacity: 1;
}

.lg-show-in .lg-hide-items .lg-prev {
  opacity: 0;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0);
}

.lg-show-in .lg-hide-items .lg-next {
  opacity: 0;
  -webkit-transform: translate3d(10px, 0, 0);
  transform: translate3d(10px, 0, 0);
}

.lg-show-in .lg-hide-items .lg-toolbar {
  opacity: 0;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
}

.lg-show-in .lg-hide-items.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  -webkit-transform: translate3d(0, 20px, 0);
  transform: translate3d(0, 20px, 0);
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999901;
  text-align: left;
  opacity: 0.001;
  outline: none;
  will-change: auto;
  overflow: hidden;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.lg-outer.lg-zoom-from-image {
  opacity: 1;
}

.lg-outer.lg-visible {
  opacity: 1;
}

.lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-prev-slide, .lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-next-slide, .lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-current {
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
}

.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.lg-outer .lg-inner {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: opacity 0s;
  -o-transition: opacity 0s;
  transition: opacity 0s;
  white-space: nowrap;
}

.lg-outer .lg-item {
  display: none !important;
}

.lg-outer .lg-item:not(.lg-start-end-progress) {
  background: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-lightbox/assets/images/loading.gif) no-repeat scroll center center transparent;
}

.lg-outer.lg-css3 .lg-prev-slide,
.lg-outer.lg-css3 .lg-current,
.lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}

.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}

.lg-outer .lg-item,
.lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}

.lg-outer .lg-item:before,
.lg-outer .lg-img-wrap:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.lg-outer .lg-img-wrap {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  white-space: nowrap;
  font-size: 0;
}

.lg-outer .lg-item.lg-complete {
  background-image: none;
}

.lg-outer .lg-item.lg-current {
  z-index: 99060;
}

.lg-outer .lg-object {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  position: relative;
}

.lg-outer .lg-empty-html.lg-sub-html,
.lg-outer .lg-empty-html .lg-sub-html {
  display: none;
}

.lg-outer.lg-hide-download .lg-download {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-first-slide .lg-dummy-img {
  position: absolute;
  top: 50%;
  left: 50%;
}

.lg-outer.lg-components-open:not(.lg-zoomed) .lg-components {
  -webkit-transform: translate3d(0, 0%, 0);
  transform: translate3d(0, 0%, 0);
  opacity: 1;
}

.lg-outer.lg-components-open:not(.lg-zoomed) .lg-sub-html {
  opacity: 1;
  transition: opacity 0.2s ease-out 0.15s;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999900;
  background-color: #FFF;
  opacity: 0;
  will-change: auto;
  -webkit-transition: opacity 333ms ease-in 0s;
  -o-transition: opacity 333ms ease-in 0s;
  transition: opacity 333ms ease-in 0s;
}

.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide,
.lg-css3.lg-no-trans .lg-next-slide,
.lg-css3.lg-no-trans .lg-current {
  -webkit-transition: none 0s ease 0s !important;
  -moz-transition: none 0s ease 0s !important;
  -o-transition: none 0s ease 0s !important;
  transition: none 0s ease 0s !important;
}

.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-css3.lg-fade .lg-item {
  opacity: 0;
}

.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}

.lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s;
  -moz-transition: opacity 0.1s ease 0s;
  -o-transition: opacity 0.1s ease 0s;
  transition: opacity 0.1s ease 0s;
}

.lg-css3.lg-use-css3 .lg-item.lg-start-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  transition: transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
}

.lg-css3.lg-use-css3 .lg-item.lg-start-end-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

.lg-container {
  display: none;
}

.lg-container.lg-show {
  display: block;
}

.lg-container.lg-dragging-vertical .lg-backdrop {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-container.lg-dragging-vertical .lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-inline .lg-backdrop,
.lg-inline .lg-outer {
  position: absolute;
}

.lg-inline .lg-backdrop {
  z-index: 99;
}

.lg-inline .lg-outer {
  z-index: 2;
}

.lg-inline .lg-maximize:after {
  content: '\e909';
}

.lg-components {
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  will-change: transform;
  -webkit-transition: -webkit-transform 0.35s ease-out 0s;
  -moz-transition: -moz-transform 0.35s ease-out 0s;
  -o-transition: -o-transform 0.35s ease-out 0s;
  transition: transform 0.35s ease-out 0s;
  z-index: 99080;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

@media screen and (max-width: 480px) {
	.lg-toolbar { gap: 10px; }
	.lg-toolbar .lg-cart { order: 98; }
	.lg-toolbar #sunshine--lightbox--add-to-cart { order: 1000; flex-basis: 100%; order: 100; }
	.lg-toolbar .sunshine--mini-cart { order: 98; }
	.lg-toolbar .sunshine--mini-cart a { border: none; padding: 0; }
	.lg-toolbar .sunshine--mini-cart a span { display: none; }
	.lg-toolbar .sunshine--mini-cart a:before { content: "\f103"; font-family: "SunshineIcons"; color: #999;
    cursor: pointer;
    /*float: right;*/
    font-size: 24px;
    height: 47px;
    line-height: 27px;
    padding: 10px 0;
    text-align: center;
    text-decoration: none !important;
    outline: medium none;
    will-change: color;
    -webkit-transition: color 0.2s linear;
    -o-transition: color 0.2s linear;
    transition: color 0.2s linear;
    background: none;
    border: none;
    box-shadow: none;  }
	.lg-toolbar .lg-close { order: 99; margin-left: auto; text-align: right; }
	.lg-toolbar .lg-counter { display: none; }
}/* Base CSS needed for Sunshine at minimum to display properly */
:root {
	--sunshine--light-gray: #EFEFEF;
	--sunshine--medium-gray: #CCC;
	--sunshine--gray: #666;
	--sunshine--dark-gray: #333;
	--sunshine--dark: #1F1F1F;
	--sunshine--border-radius: 10px;
	--sunshine--row-height: 16em;
}

/* ----------------------------------- */
/* COMMON / RESETS
/* ----------------------------------- */

/*
#sunshine img { border: 0; padding: 0; box-shadow: none; max-width: 100%; height: auto; }
*/

#sunshine ol, #sunshine ul, #sunshine li, #sunshine table, #sunshine th, #sunshine td, #sunshine fieldset { margin: 0; padding: 0; background: none; border: none; box-sizing: border-box; }

.sunshine-photo-cart .sunshine--button { display: inline-block; border: none; cursor: pointer; background: var(--sunshine--dark); padding: 8px 15px; color: #FFF; height: auto; text-transform: uppercase; line-height: 1; text-decoration: none !important; font-size: 15px; border-radius: 3px; text-shadow: none; white-space: normal; }
.sunshine-photo-cart .sunshine--button:hover { background: var(--sunshine--gray); color: #FFF; text-decoration: none; }
.sunshine-photo-cart .sunshine--button-alt, #sunshine #sunshine-submit { border: none; cursor: pointer; background: var(--sunshine--medium-gray); color: var(--sunshine--gray); border-radius: 3px; height: auto; padding: 5px 10px; text-shadow: none; }
.sunshine-photo-cart .sunshine--button-alt:hover, #sunshine #sunshine-submit:hover { background: var(--sunshine--dark-gray); color: #FFF; text-decoration: none; }
.sunshine-photo-cart .sunshine--button-link { border: none; cursor: pointer; padding: 0; margin: 0; color: var(--sunshine--dark) !important; background: none !important; font-size: .8em; }
.sunshine-photo-cart .sunshine--button-link:hover { background: none; color: var(--sunshine--gray); }

/* Try to override some theme style to work better */
#sunshine button, #sunshine--modal button { box-shadow: none; }

#sunshine, #sunshine--main { width: 100%; max-width: 100%; }
#sunshine .sunshine--container { max-width: 1360px; margin: 0 auto; padding: 0 5%; box-sizing: border-box; }
#sunshine:after { content: ""; display: table; clear: both; }

.sunshine--loading { position: relative; }
.sunshine--loading:before { content: ""; position: absolute; z-index: 5000; top: 0; left: 0; right: 0; bottom: 0; background: #FFF; opacity: .9; }
.sunshine--loading:after {
  content: '';
  box-sizing: border-box;
  position: fixed;
  z-index: 5001;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  margin-top: -50px;
  margin-left: -25px;
  border-radius: 50%;
  border-top: 2px solid var(--sunshine--dark);
  border-right: 2px solid transparent;
  animation: sunshineloading .6s linear infinite;
}
@keyframes sunshineloading { 100% { transform: rotate(360deg); } }
#sunshine--loading-window--message { position: fixed; z-index: 5002; left: 50%; top: 50%; transform: translate(-50%,0); margin-top: 20px; color: #000; text-align: center; }

.sunshine--required { display: inline-block; margin-left: 10px; color: red; font-weight: normal; font-size: .9em; text-transform: none; }

/* ----------------------------------- */
/* MAIN
/* ----------------------------------- */
#sunshine { padding: 50px 0; }

#sunshine h1 { font-size: 3em; margin: 0 0 20px 0; font-weight: bold; }
#sunshine h2 { font-size: 24px; margin: 0 0 15px 0; font-weight: bold; }
#sunshine h3 { font-size: 20px; margin: 0 0 15px 0; }
/*#sunshine p { margin: 0 0 15px 0; }*/
#sunshine li { margin: 0 0 7px 15px; }
#sunshine a { box-shadow: none; }

.sunshine--count { background: var(--sunshine--dark-gray); color: #FFF; font-size: 11px; display: inline-block; width: 20px; height: 20px; line-height: 20px; border-radius: 50%; text-align: center; vertical-align: middle; }

#sunshine--page-header { display: flex; justify-content: space-between; align-items: center; margin: 0 0 30px 0; }
#sunshine--page-header h1 { font-size: 200%; font-weight: bold; margin: 0; flex-grow: 10; }

/* Home Content or Gallery Description */
#sunshine--content { margin: 0 0 50px 0; }
#sunshine--before,
#sunshine--after { clear: both; }

#sunshine--breadcrumb { margin: 0 0 15px 0; font-size: 12px; }

.sunshine--gallery--expires,
#sunshine--gallery--special-access { background: var(--sunshine--light-gray); color: var(--sunshine--dark); padding: 10px 30px; text-align: center; margin: 30px 0; }

/* Gallery List */
#sunshine--gallery-items { width: 100%; margin: 0 0 30px 0 !important; display: grid; grid-template-columns: 1fr 1fr; grid-column-gap: 10px; grid-row-gap: 10px; }
#sunshine--gallery-items.sunshine--col-3 { grid-template-columns: 1fr 1fr 1fr; }
#sunshine--gallery-items.sunshine--col-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
#sunshine--gallery-items.sunshine--col-5 { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }

#sunshine--gallery-items .sunshine--gallery-item a { margin: 0; padding: 0; }
#sunshine--gallery-items .sunshine--gallery-item img { width: 100%; height: auto; display: block; }
#sunshine--gallery-items .sunshine--gallery-item h2 { font-weight: bold; font-size: 16px; margin: 10px 0 0 0; line-height: 1.05; }
#sunshine--gallery-items .sunshine--gallery-item.sunshine--password-required h2:before { content: "\f106"; font-family: "SunshineIcons"; color: #FFF; }
#sunshine--gallery-items .sunshine--gallery-item h2 a { text-decoration: none; }

/* Gallery Images */
#sunshine--image-items { width: 100%; clear: left; margin: 0 0 30px 0; padding: 0; display: grid; grid-column-gap: 10px; grid-row-gap: 10px; align-items: start; }
#sunshine--image-items figure.sunshine--image-item { list-style: none !important; margin: 0 0 30px 0; position: relative; text-align: center; }
#sunshine--image-items.sunshine--col-3 { grid-template-columns: 1fr 1fr 1fr; }
#sunshine--image-items.sunshine--col-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
#sunshine--image-items.sunshine--col-5 { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
#sunshine--image-items figure.sunshine--image-item img { display: block; width: 100%; height: auto; }
#sunshine--image-items figure img { max-width: 100%; height: auto; margin: 0 auto; position: relative; z-index: 1; }

#sunshine--image-items .sunshine--image-menu { transition: opacity .2s; opacity: 0; background: linear-gradient(0deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,0) 100%); position: absolute; bottom: 0; left: 0; right: 0; margin: 0; padding: 10px 5%; z-index: 1000; text-align: center; }
#sunshine--image-items figure:hover .sunshine--image-menu,
#sunshine--image-items figure:focus-within .sunshine--image-menu { opacity: 1; }
#sunshine--image-items figure .sunshine--image-menu ul { display: flex; gap: 10px; justify-content: center; margin: 0; padding: 0; }
#sunshine--image-items figure .sunshine--image-menu li { position: relative; opacity: 1 !important; width: auto !important; margin: 0 !important; text-align: left; font-size: 16px; clear: none !important; list-style: none !important; }
#sunshine--image-items figure .sunshine--image-menu li a,
#sunshine--image-items figure .sunshine--image-menu li button { opacity: .7; cursor: pointer; display: block; text-decoration: none; border: 0; padding: 0; margin: 0; background: none; }
#sunshine--image-items figure .sunshine--image-menu li a:hover,
#sunshine--image-items figure .sunshine--image-menu li button:hover { opacity: 1; }
#sunshine--image-items figure .sunshine--image-menu li a span.sunshine--image-menu--name,
#sunshine--image-items figure .sunshine--image-menu li button span.sunshine--image-menu--name { display: inline-block; text-indent: -9999px; }
#sunshine--image-items figure .sunshine--image-menu li a:before,
#sunshine--image-items figure .sunshine--image-menu li button:before { font-size: 20px; color: #FFF; }
#sunshine--image-items figure .sunshine--image-menu li.sunshine--favorite button:before { content: "\f101"; }
#sunshine--image-items figure.sunshine--image--is-favorite .sunshine--image-menu li.sunshine--favorite button:before { content: "\f102"; }
#sunshine--image-items figure .sunshine--image-menu li.sunshine--purchase button:before,
#sunshine--image-items figure .sunshine--image-menu li.sunshine--purchase a:before { content: "\f14b"; }
#sunshine--image-items figure.sunshine--image--in-cart .sunshine--image-menu li.sunshine--purchase button:before,
#sunshine--image-items figure.sunshine--image--in-cart .sunshine--image-menu li.sunshine--purchase a:before { content: "\f14c"; }
#sunshine--image-items figure .sunshine--image-menu li.sunshine--comments button:before { content: "\f110"; }
#sunshine--image-items figure.sunshine--image--has-comments .sunshine--image-menu li.sunshine--comments button:before { content: "\f111"; }
#sunshine--image-items figure .sunshine--image-menu li .sunshine--count { position: absolute; top: -10px; right: -10px; }
#sunshine--image-items figure .sunshine--image-menu li.sunshine--share button:before { content: "\f108"; }
#sunshine--image-items figure .sunshine--image-menu li.sunshine--download button:before { content: "\f107"; }

#sunshine--image-items figure .sunshine--image-menu li a:before,
#sunshine--image-items figure .sunshine--image-menu li button:before,
#sunshine--image-items figure .sunshine--image-status span:before { font-family: "SunshineIcons"; line-height: 1; }

/* Image status */
#sunshine--image-items figure .sunshine--image-status { transition: opacity .2s; position: absolute; z-index: 100; top: 5px; left: 5px; }
#sunshine--image-items figure .sunshine--image-status span { position: relative; display: inline-block; margin: 0 3px 0 0; padding: 0; height: 22px; width: 22px; text-align: center; border-radius: 3px; background: var(--sunshine--dark-gray); opacity: .5; text-align: center; }
#sunshine--image-items figure .sunshine--image-status span:before { font-size: 14px; color: #FFF; position: absolute; top: 4px; left: 50%; transform: translateX(-50%); }

#sunshine--image-items figure .sunshine--image-status .sunshine--image--is-favorite { display: none; }
#sunshine--image-items figure.sunshine--image--is-favorite .sunshine--image-status .sunshine--image--is-favorite { display: inline-block; }
#sunshine--image-items figure.sunshine--image--is-favorite .sunshine--image-status .sunshine--image--is-favorite:before { content: "\f102"; }

#sunshine--image-items figure .sunshine--image-status .sunshine--image--in-cart { display: none; }
#sunshine--image-items figure.sunshine--image--in-cart .sunshine--image-status .sunshine--image--in-cart { display: inline-block; }
#sunshine--image-items figure.sunshine--image--in-cart .sunshine--image-status .sunshine--image--in-cart:before { content: "\f104"; }

#sunshine--image-items figure .sunshine--image-status .sunshine--image--has-comments { display: none; }
#sunshine--image-items figure.sunshine--image--has-comments .sunshine--image-status .sunshine--image--has-comments { display: inline-block; }
#sunshine--image-items figure.sunshine--image--has-comments .sunshine--image-status .sunshine--image--has-comments:before { content: "\f111"; }

#sunshine--image-items figure .sunshine--image-menu li.sunshine-comments span.sunshine-comment-count { position: absolute; top: 0; right: 0; transform: translate(50%,-30%); background: #FFF; width: 14px; height: 14px; line-height: 14px; text-align: center; color: var(--sunshine--dark); font-size: 11px; }

#sunshine--image-items figure .sunshine--image--name { transition: opacity .2s; position: absolute; z-index: 10; bottom: 0; left: 0; right: 0; margin: 0; padding: 5px; background: linear-gradient(0deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,0) 100%); text-align: center; color: #FFF; font-size: 11px; }
#sunshine--image-items figure:hover .sunshine--image--name,
#sunshine--image-items figure:focus-within .sunshine--image--name { opacity: 0; }

/* Multi cart add */
#sunshine--image-items figure .sunshine--image--select { position: absolute; z-index: 10; right: 10px; top: 10px; }
#sunshine--gallery--multi-image-cart { position: fixed; z-index: 99997; bottom: 20px; left: 50%; transform: translateX(-50%); }
#sunshine--image--add-to-cart-multi--images { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 5px; }

/* Pagination */
.sunshine--pagination { text-align: center; padding: 10px 0 0 0; clear: both; margin-top: 30px; }

.sunshine--pagination--numbers { border-top: 1px solid #CCC; }
.sunshine--pagination--numbers a { text-decoration: none; padding: 3px 6px; margin: 0; }
.sunshine--pagination--numbers a.current { background: var(--sunshine--dark-gray); color: #FFF; }

/* Access Form */
#sunshine--gallery--access { max-width: 500px; margin: 0 auto; }

/* Action Menu */
#sunshine .sunshine--action-menu { background: #FFF; }
#sunshine .sunshine--action-menu ul { display: flex; align-items: center; gap: 20px; margin: 0; padding: 0; }
#sunshine .sunshine--action-menu ul li { list-style: none; margin: 0; padding: 0; white-space: nowrap; font-size: 1rem; background: #FFF; padding: 5px 10px; border-radius: 5px;  }
#sunshine .sunshine--action-menu ul li:before,
#sunshine--image--add-to-cart--store:before { font-family: "SunshineIcons"; margin-right: 5px; display: inline-block; }
#sunshine .sunshine--action-menu li.sunshine--gallery-return:before { content: "\f109"; }
#sunshine .sunshine--action-menu li.sunshine--gallery-store:before,
#sunshine--image--add-to-cart--store:before { content: "\f138"; }
#sunshine .sunshine--action-menu li.sunshine--download:before { content: "\f107"; }
#sunshine .sunshine--action-menu li.sunshine--favorites-share:before { content: "\f108"; }
#sunshine .sunshine--action-menu li.sunshine--favorites-clear:before { content: "\f10c"; }

#sunshine .sunshine--action-menu ul li button,
#sunshine .sunshine--action-menu ul li a { display: inline-block; font-weight: 400; font-size: 1rem; text-decoration: none; border: 0; padding: 0; margin: 0; background: none; color: var(--sunshine--dark); }

#sunshine-gallery-expiration-notice { margin: 0 0 25px 0; }

/* Single Image */
#sunshine--image--content { position: relative; }
#sunshine--image--content--display { text-align: center; }
#sunshine--image--content--display img { max-width: 100%; height: auto; margin: 0 auto; }
/*#sunshine--image--content .sunshine--image-menu { position: absolute; z-index: 1000; top: 10px; left: 50%; transform: translateX(-50%); }*/
#sunshine--image--content .sunshine--image-menu ul { display: flex; padding: 0; margin: 0 0 15px 0; list-style: none; justify-content: center; }
#sunshine--image--content .sunshine--image-menu li { margin: 0 10px 0 0; padding: 0; position: relative; }
#sunshine--image--content .sunshine--image-menu li .sunshine--count { position: absolute; top: -6px; right: -6px; }
#sunshine--image--content .sunshine--image-menu li a,
#sunshine--image--content .sunshine--image-menu li button { cursor: pointer; display: block; width: 40px; height: 40px; position: relative; background: #FFF; border-radius: 40px; border: 1px solid var(--sunshine--medium-gray); margin: 0; padding: 0; }
#sunshine--image--content .sunshine--image-menu li a span,
#sunshine--image--content .sunshine--image-menu li button span { display: none; position: absolute; bottom: 105%; left: 50%; transform: translate(-50%, -10px); background: rgba(100,100,100,.75); padding: 4px 10px; color: #FFF; font-size: 12px; white-space: nowrap; }
#sunshine--image--content .sunshine--image-menu li a span:after,
#sunshine--image--content .sunshine--image-menu li button span:after { top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(100,100,100, 0);
	border-top-color: rgba(100,100,100,.75);
	border-width: 5px;
	margin-left: -5px; }
#sunshine--image--content .sunshine--image-menu li a:hover span,
#sunshine--image--content .sunshine--image-menu li button:hover span { display: inline-block; }
#sunshine--image--content .sunshine--image-menu li a:before,
#sunshine--image--content .sunshine--image-menu li button:before { font-family: "SunshineIcons"; display: inline-block; color: var(--sunshine--gray); font-size: 24px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
#sunshine--image--content .sunshine--image-menu li.sunshine--return a:before { content: "\f109"; }
#sunshine--image--content .sunshine--image-menu li.sunshine--favorite button:before { content: "\f101"; }
.sunshine--image--is-favorite #sunshine--image--content .sunshine--image-menu li.sunshine--favorite button:before { content: "\f102"; }
#sunshine--image--content .sunshine--image-menu li.sunshine--purchase button:before { content: "\f14b"; }
.sunshine--image--in-cart #sunshine--image--content .sunshine--image-menu li.sunshine--purchase button:before { content: "\f14c"; }
#sunshine--image--content .sunshine--image-menu li.sunshine--comments button:before { content: "\f110"; }
.sunshine--image--has-comments #sunshine--image--content .sunshine--image-menu li.sunshine--comments button:before { content: "\f111"; }
#sunshine--image--content .sunshine--image-menu li.sunshine--share button:before { content: "\f108"; }
#sunshine--image--content .sunshine--image-menu li.sunshine--download button:before { content: "\f107"; }

#sunshine--image--nav { margin: 25px 0 0 0; text-align: left; display: flex; justify-content: space-between; }
#sunshine--image--nav > * { flex-grow: 10; }
#sunshine--image--nav #sunshine-next { text-align: right; }

/* Cart */
table#sunshine--cart--items { width: 100%; border-bottom: 1px solid #CCC; margin: 0 0 20px 0; table-layout: auto; border-collapse: collapse; }
#sunshine--cart--items th { text-align: left; font-size: 11px; text-transform: uppercase; padding: 0 0 5px 0; border-bottom: 1px solid #CCC; }
#sunshine--cart--items th.sunshine--cart--qty { min-width: 50px; }
#sunshine--cart--items td { padding: 10px 20px 10px 0; vertical-align: middle; border-bottom: 1px solid #CCC; }
#sunshine--cart--items td:last-child { padding-right: 0; }
#sunshine--cart--items td.sunshine--cart-item--image { width: 100px; }
#sunshine--cart--items td.sunshine--cart-item--image img { max-width: 100px; max-height: 100px; }
#sunshine--cart--items td.sunshine--cart-item--image span.sunshine--cart-item--image-name { display: block; }
#sunshine--cart--items td .sunshine--cart-item--product-name { font-weight: bold; }
#sunshine--cart--items td .sunshine--cart-item--product-options,
#sunshine--cart--items td .sunshine--cart-item--product-option,
#sunshine--cart--items td .sunshine--cart-item--extra,
#sunshine--cart--items td .sunshine--cart-item--image-name,
#sunshine--cart--items td .sunshine--cart-item--comments { font-size: 14px; }
#sunshine--cart--items td .sunshine--cart-item--product-option-images img { height: 50px; width: auto; margin: 0 5px 0 0; }
#sunshine--cart--items td .sunshine--cart-item--product-option-images--incomplete { font-weight: bold; color: red; }
#sunshine--cart--items td.sunshine--cart-item--qty { min-width: 70px; }
#sunshine--cart--items .sunshine--cart-item--total { text-align: right; }
#sunshine--cart--items td.sunshine--cart-item--name h2 { font-weight: bold; font-size: 15px; }
#sunshine--cart--items a.sunshine--cart-item--delete { text-decoration: none; }
#sunshine--cart--items a.sunshine--cart-item--delete:before { content: "\f10c"; font-family: "SunshineIcons"; }

#sunshine--cart--totals { width: auto; max-width: 50%; float: right; text-align: left; }
#sunshine #sunshine--cart--totals--items { width: 100%; margin: 0 0 25px 0; }
#sunshine--cart--totals--items th,
#sunshine--cart--totals--items td { font-size: 15px; padding-top: 5px; padding-bottom: 5px; }
#sunshine--cart--totals--items th { text-align: left; padding-right: 40px; }
#sunshine--cart--totals--items td { text-align: right; padding: 0 0 0 10px; white-space: nowrap; }
#sunshine--cart--totals--items .sunshine--cart--total th,
#sunshine--cart--totals--items .sunshine--cart--total td { font-size: 18px; font-weight: bold; }
#sunshine--cart--checkout-button { clear: both; }
#sunshine--cart--checkout-button a { display: block; text-align: center; }
#sunshine--cart--update-button { float: left; margin-right: 15px; }
#sunshine--cart--update-button input:disabled { opacity: .5; cursor: not-allowed; }
#sunshine--cart--totals--items th .sunshine--cart--discount--names { font-weight: normal; font-size: 80%; font-style: italic; }

.sunshine--cart--total--tax--explain { font-size: 15px; font-weight: normal; display: block; font-style: italic; }

/* Form Fields */
.sunshine--buttons { clear: both; padding: 20px 0 0 0; }
.sunshine--form h2 { font-size: 20px; font-weight: bold; padding: 0 0 5px 0;  margin: 0 0 15px 0; border-bottom: 1px solid #CCC; }
.sunshine--form h3 { font-weight: bold; text-transform: uppercase; }

.sunshine-photo-cart .sunshine--form--fields { clear: both; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5px 15px; }
.sunshine-photo-cart .sunshine--form--field,
.sunshine-photo-cart .sunshine--form--field-full { flex-basis: 100%; }
.sunshine-photo-cart .sunshine--form--field-half { flex-basis: 46%; }
.sunshine-photo-cart .sunshine--form--field-third { flex-basis: 31%; }
.sunshine-photo-cart .sunshine--form--field-hidden { display: none; }

.sunshine-photo-cart .sunshine--form--field,
.sunshine-photo-cart .sunshine--form--fieldset-button { position: relative; margin: 0 0 15px 0; line-height: 1; flex-grow: 1; }
.sunshine-photo-cart .sunshine--form--field label { display: block; font-size: 16px; font-weight: 400; color: var(--sunshine--dark-gray); cursor: pointer; }
.sunshine-photo-cart .sunshine--form--field input[type="text"],
.sunshine-photo-cart .sunshine--form--field input[type="email"],
.sunshine-photo-cart .sunshine--form--field input[type="tel"],
.sunshine-photo-cart .sunshine--form--field input[type="password"],
.sunshine-photo-cart .sunshine--form--field input[type="search"],
.sunshine-photo-cart .sunshine--form--field select,
.sunshine-photo-cart .sunshine--form--field textarea { font-size: 16px; width: 100%; box-sizing: border-box; margin-top: 5px; background: #FFF; border-radius: 5px; color: #000; padding: 10px 15px; border: 1px solid #e6e6e6; box-shadow: 0px 1px 1px rgb(0 0 0 / 3%), 0px 3px 6px rgb(0 0 0 / 2%); }
.sunshine-photo-cart .sunshine--form--field label abbr { color: red; border: none; text-decoration: none; display: inline-block; margin-left: 5px; }

.sunshine-photo-cart .sunshine--form--field-radio .sunshine--form--field--radio-option { display: block; margin: 10px 0 0 0; }
.sunshine-photo-cart .sunshine--form--field-radio .sunshine--form--field--radio-option > input { margin: 0; }

.sunshine-photo-cart .sunshine--form--field > select {
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
	background-repeat: no-repeat;
	background-position-x: 100%;
	background-position-y: 10px;
}

.sunshine--form--field--desc { color: var(--sunshine--gray); font-size: 13px; margin-top: 10px; line-height: 1.3; }
label span.sunshine--form--field--desc { display: inline-block; margin: 0 0 0 10px; }

/* Checkout */
#sunshine--checkout { position: relative; }
#sunshine--checkout--main { width: 100%; display: grid; grid-template-columns: 2fr 1fr; gap: 30px; background-color: var(--sunshine--light-gray); padding: 30px 40px; border-radius: 5px; box-sizing: border-box; }
#sunshine--checkout--steps { flex-basis: 60%; flex-shrink: 0; order: 1; }
#sunshine--checkout--summary { flex-basis: 35%; background: #FFF; padding: 20px 30px; box-sizing: border-box; border-radius: 5px; order: 2; }

#sunshine--checkout--steps fieldset { opacity: .3; margin: 0 !important; border: none; border-top: 1px solid rgba(0,0,0,.05) !important; padding: 20px 0; display: block; width: 100%; }
#sunshine--checkout--steps fieldset:first-child { border: none !important; padding-top: 0; }
#sunshine--checkout--steps fieldset.sunshine--checkout--section-active,
#sunshine--checkout--steps fieldset.sunshine--checkout--section-completed { opacity: 1; }
#sunshine--checkout--steps fieldset.sunshine--checkout--section-completed legend:before { content: '\f118'; font-family: "SunshineIcons"; display: inline-block; font-size: 16px; color: green; margin-right: 5px; vertical-align: middle; }
#sunshine--checkout--steps .sunshine--checkout--section-summary { clear: both; font-size: 90%; margin: 5px 0 0 0; opacity: .8; color: var(--sunshine--dark); }
#sunshine--checkout--steps fieldset legend { display: block; width: 100%; margin: 0 0 15px 0; padding: 0; position: static; font-size: 16px; color: var(--sunshine--dark); text-transform: uppercase; font-weight: bold; letter-spacing: 2px; float: left; }
#sunshine--checkout--steps fieldset.sunshine--checkout--section-completed legend { float: left; margin: 0; }
#sunshine--checkout--steps fieldset legend button { float: right; display: none; letter-spacing: 0; font-size: 14px; border: none; padding: 0; margin: 0; line-height: 1; text-transform: uppercase; box-shadow: none; background: none; color: var(--sunshine--dark); }
#sunshine--checkout--steps fieldset.sunshine--checkout--section-completed legend button { display: block; }
#sunshine--checkout--steps fieldset .sunshine--checkout--section-button { margin: 15px 0 0 0; }

.sunshine--form--field:focus-within > input[type="text"],
.sunshine--form--field:focus-within > input[type="email"],
.sunshine--form--field:focus-within > select:focus,
.sunshine--form--field:focus-within > textarea:focus,
input.focused { outline: 2px solid var(--sunshine--dark) !important; }

#sunshine--checkout .sunshine-photo-cart .sunshine--form--fields { clear: both; display: none; } /* Hide fields for a section by default */
#sunshine--checkout fieldset.sunshine--checkout--section-active .sunshine--form--fields { display: flex; flex-wrap: wrap; justify-content: space-between; }

#sunshine--checkout #sunshine--form--field--delivery_method { display: flex; flex-wrap: wrap; gap: 10px; }
#sunshine--checkout #sunshine--form--field--delivery_method .sunshine--form--field--radio-option { background: #FFF; color: var(--sunshine--gray); border-radius: 5px; padding: 15px; position: relative; overflow: hidden; display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
#sunshine--checkout #sunshine--form--field--delivery_method .sunshine--form--field--radio-option:has(input:checked) { outline: 2px solid var(--sunshine--dark-gray); color: var(--sunshine--dark);  }
#sunshine--checkout #sunshine--form--field--delivery_method .sunshine--form--field--radio-option:has(input:checked):before { content: "\f118"; font-family: "SunshineIcons"; }
#sunshine--checkout #sunshine--form--field--delivery_method .sunshine--form--field--radio-option input:checked { position: absolute; left: -99999px; }
#sunshine--checkout #sunshine--form--field--delivery_method .sunshine--checkout--delivery-method--description { flex-basis: 100%; font-size: 80%; color: var(--sunshine--gray); }

#sunshine--checkout #sunshine--form--field--shipping_method { displayx: flex; gap: 10px; flex-wrap: wrap; }
#sunshine--checkout #sunshine--form--field--shipping_method .sunshine--form--field--radio-option { cursor: pointer; background: #FFF; color: var(--sunshine--gray); border-radius: 5px; flex-basis: 32%; padding: 15px; position: relative; overflow: hidden; }
#sunshine--checkout #sunshine--form--field--shipping_method .sunshine--form--field--radio-option:has(input:checked) { outline: 2px solid var(--sunshine--dark-gray); color: var(--sunshine--dark); display: flex; flex-wrap: wrap; gap: 7px; }
/* Fancy checkbox for shipping method */
#sunshine--checkout #sunshine--form--field--shipping_method .sunshine--form--field--radio-option:has(input:checked):before { content: "\f118"; font-family: "SunshineIcons"; }
#sunshine--checkout #sunshine--form--field--shipping_method .sunshine--form--field--radio-option input:checked { position: absolute; left: -99999px; }

#sunshine--checkout #sunshine--form--field--payment_methodx { display: flex; gap: 10px; flex-wrap: wrap; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option { display: block; cursor: pointer; background: #FFF; color: var(--sunshine--gray); border-radius: 5px; padding: 15px; position: relative; overflow: hidden; flex-grow: 1; margin: 0 0 10px 0; font-weight: bold; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option:has(input:checked) { outline: 2px solid var(--sunshine--dark-gray); color: var(--sunshine--dark); }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option:has(input:checked):before { content: "\f118"; font-family: "SunshineIcons"; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option > input:checked { position: absolute; left: -99999px; }

#sunshine--checkout .sunshine--checkout--payment-method--extra { display: none; margin-top: 10px; }

/*
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option { background: #FFF; border-radius: 5px; padding: 15px; position: relative; overflow: hidden; margin: 10px 0 0 0; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option:has(input:checked) { background: var(--sunshine--gray); color: #FFF; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option:has(input:checked) label { color: #FFF; }
#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option > input { display: none; }
*/

#sunshine--checkout .sunshine--form--field-submit { margin-top: 40px; }

.sunshine--form--field--radio-option--extra { display: none; }
.sunshine--form--field--radio-option input:checked ~ .sunshine--form--field--radio-option--extra { display: block; margin-top: 15px; }

#sunshine--checkout--order-review--toggle { display: none; }

/* Show test payment message */
.sunshine--payment--test,
#sunshine--checkout--paypal-errors { background: red; color: #FFF; font-size: 14px; padding: 10px 20px; margin: 0 0 15px 0; border-radius: 5px; }

/* Authorize.net card form */
#sunshine--authorizenet--card { display: flex; gap: 10px; }
.sunshine-photo-cart #sunshine--authorizenet--card label { flex-basis: 20%; font-size: 14px; }
.sunshine-photo-cart #sunshine--authorizenet--card label:nth-child( 1 ) { flex-basis: 60%; flex-grow: 4; }
.sunshine-photo-cart #sunshine--authorizenet--card label input { width: 100%; box-sizing: border-box; margin-top: 5px; background: #FFF; border-radius: 5px; color: #000; padding: .75rem; border: 1px solid #e6e6e6; box-shadow: 0px 1px 1px rgb(0 0 0 / 3%), 0px 3px 6px rgb(0 0 0 / 2%); }

.sunshine-photo-cart .sunshine--form--field .sunshine--form--field-description,
.sunshine-photo-cart .sunshine--form--field .sunshine--checkout--shipping-method--description { display: block; flex-basis: 100%; margin: 5px 0 0 0; font-size: 13px; line-height: 1.2; color: var(--sunshine--gray); }
.sunshine-photo-cart .sunshine--form--field.sunshine--form--field-checkbox .sunshine--form--field-description { display: inline-block; }
.sunshine-photo-cart .sunshine--form--field .sunshine--checkout--shipping-method--price { display: inline-block; margin-left: 15px; font-weight: bold; }

.sunshine-photo-cart .sunshine--form--field.sunshine--form--field-submit { border: none; padding: 0; width: 100%; background: none; border: none; }
.sunshine-photo-cart .sunshine--form--field.sunshine--form--field-submit button { display: block; width: 100%; padding: 8px 20px; }
.sunshine-photo-cart #sunshine--checkout .sunshine--form--field.sunshine--form--field-submit button { padding: 25px 20px; font-size: 110%; font-weight: bold; }

.sunshine-photo-cart #sunshine--form--field--terms { width: 100%; font-size: 90%; opacity: .6; text-align: center; margin-top: 20px; }

.sunshine-photo-cart .sunshine--form--field .sunshine--form--field--label-description { display: block; font-weight: normal; font-size: 90%; color: var(--sunshine--gray); margin-top: 7px; line-height: 1.3; }

.sunshine-photo-cart .sunshine--form--field-error { color: red; font-size: 70%; margin-top: 4px; }
.sunshine-photo-cart .sunshine--form--field.sunshine--form--field-has-error { border: 2px solid red; }

#sunshine--checkout--login { background: rgba(0,0,0,.1); text-align: center; padding: 15px 20px; margin: 0 0 20px 0; font-size: 80%; border-radius: 5px; }

#sunshine--checkout--order-review * { color: var(--sunshine--dark); }
#sunshine--checkout--order-review table#sunshine--checkout--cart-items { width: 100%; }
#sunshine--checkout--order-review table#sunshine--checkout--cart-items td { position: relative; font-size: 16px; padding: 5px 15px 5px 0; vertical-align: top; }
#sunshine--checkout--order-review table#sunshine--checkout--cart-items td:last-child { padding-right: 0; text-align: right; }
#sunshine--checkout--order-review .sunshine--qty { position: absolute; left: -7px; top: -0; z-index: 10; color: #FFF; }
#sunshine--checkout--order-review table#sunshine--checkout--cart-items td.sunshine--checkout--cart-item--image { width: 70px; }
#sunshine--checkout--order-review table#sunshine--checkout--cart-items td.sunshine--checkout--cart-item--image img { border-radius: 5px; max-width: 100%; height: auto; }

#sunshine--checkout--discounts { width: 100%; border-top: 1px solid rgba(0,0,0,.2); margin-top: 15px; padding-top: 15px; }
#sunshine--checkout--discount-form { display: flex; f align-items: center; box-sizing: border-box; background: #FFF; border-radius: 5px; color: #000; border: 1px solid #e6e6e6; box-shadow: 0px 1px 1px rgb(0 0 0 / 3%), 0px 3px 6px rgb(0 0 0 / 2%); }
#sunshine--checkout--discount-form input { flex-grow: 5; font-size: 14px; border: none; padding: 10px 15px; background: #FFF; }
#sunshine--checkout--discount-form.error input { border-color: red; }
#sunshine--checkout--discount-form--error { flex-basis: 100%; color: red; font-weight: bold; margin-top: 10px; font-size: 12px; }
#sunshine--checkout--discount-form button { border: none; background: none;  padding: 10px 15px; margin: 0; color: var(--sunshine--dark); font-size: 13px; font-weight: bold; text-transform: uppercase; }
#sunshine--checkout--discounts-applied { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 5px; }
#sunshine--checkout--discounts .sunshine--checkout--discount-applied { display: inline-block; background: rgba(0,0,0,.1); padding: 4px 6px; font-size: 12px; border-radius: 3px; }
#sunshine--checkout--discounts .sunshine--checkout--discount-applied button { border: none; background: none; padding: 0; margin: 0; color: rgba(0,0,0,.5); font-size: 14px; font-weight: bold; }

#sunshine table#sunshine--checkout--order-review--amounts { width: 100%; border-top: 1px solid rgba(0,0,0,.2); margin-top: 15px; border-collapse: collapse; }
#sunshine table#sunshine--checkout--order-review--amounts tbody { padding: 20px 0; }
#sunshine--checkout--order-review--amounts th,
#sunshine--checkout--order-review--amounts td { font-size: 16px; padding: 10px 0; }
#sunshine--checkout--order-review--amounts th { font-weight: normal; text-align: left; }
#sunshine--checkout--order-review--amounts td { text-align: right; }
#sunshine--checkout--order-review--amounts tr#sunshine--checkout--order-review--total th,
#sunshine--checkout--order-review--amounts tr#sunshine--checkout--order-review--total td { border-top: 1px solid rgba(0,0,0,.2); vertical-align: middle; }
#sunshine--checkout--order-review--amounts tr#sunshine--checkout--order-review--total th { font-weight: bold; }
#sunshine--checkout--order-review--amounts tr#sunshine--checkout--order-review--total td { font-size: 22px; font-weight: bold; }

/* Standalone Checkout */
body.sunshine--checkout--standalone { min-height: 100vh; background: #FFF; padding: 50px 5%; }
#sunshine--checkout--standalone { max-width: 1260px; margin: 0 auto; }
#sunshine--checkout--standalone h1 { margin-bottom: 40px; }
body.sunshine--checkout--standalone table,
body.sunshine--checkout--standalone th,
body.sunshine--checkout--standalone td { border: none; }

/* Account */
#sunshine--account { display: flex; justify-content: space-between; }
#sunshine--account--menu { flex-basis: 30%; }
#sunshine--account--menu ul { margin: 0; padding: 0; border-top: 1px solid var(--sunshine--light-gray); }
#sunshine--account--menu ul li { list-style: none; border-bottom: 1px solid var(--sunshine--light-gray); padding: 10px 0; margin: 0; }
#sunshine--account--menu ul li a { font-size: 16px; }
#sunshine--account--content { flex-basis: 65%; }
#sunshine--account .sunshine--form--field-legend { font-size: 1.4em; font-weight: bold; }

#sunshine--orders { width: 100%; border-collapse: collapse; }
#sunshine--orders th { font-size: 12px; text-align: left; padding: 0 0 5px 0; border-bottom: 1px solid var(--sunshine--light-gray); }
#sunshine--orders td { padding: 10px 0; }

#sunshine--account--content .sunshine--account--field { margin: 0 0 15px 0; }
#sunshine--account--content .sunshine--account--field label { display: block; font-size: 12px; text-transform: uppercase; margin: 0 0 3px 0; }
#sunshine--account--content input { width: 100%; box-sizing: border-box; padding: 5px; border: 1px solid #CCC; border-radius: 3px; background: #FFF; font-size: 16px; }

.sunshine--account--reset-password,
.sunshine--account--login { flex-basis: 100%; width: 100%; max-width: 500px; margin: 0 auto; }

/* Order */
#sunshine--order--status,
#sunshine--pickup-instructions { background: var(--sunshine--light-gray); padding: 10px 30px; text-align: center; margin: 0 0 20px 0; }
#sunshine--order--status.sunshine--order--status--pending { background: #a47e3c; color: #FFF; }
#sunshine--order--status.sunshine--order--status--processing { background: #3a87ad; color: #FFF; }
#sunshine--order--status.sunshine--order--status--shipped { background: #468847; color: #FFF; }
#sunshine--order--status.sunshine--order--status--cancelled { background: #be4a48; color: #FFF; }

#sunshine--order--status--name { display: inline; font-weight: bold; }
#sunshine--order--status--name:after { content: ": "; }
#sunshine--order--status--description { display: inline; }

#sunshine--order--details { margin: 0 0 50px 0; display: flex; }
#sunshine--order--details > * { margin: 0 50px 0 0; }

#sunshine--order--data dt { display: block; padding: 0; margin: 0 0 5px 0; font-weight: bold; }
#sunshine--order--data dd { display: block; padding: 0; margin: 0 0 15px 0; }

#sunshine--order--addresses { display: flex; margin: 0 0 50px 0; }

#sunshine--order--download--files { margin: 0 0 30px 0; }
.sunshine--order--item--download { border: 1px solid var(--sunshine--medium-gray); background: #FFF; padding: 4px 15px; text-decoration: none; font-size: 14px; color: var(--sunshine-dark); text-transform: uppercase; line-height: 1; }
.sunshine--order--item--download:before { content: "\f107"; font-family: "SunshineIcons"; margin-top: 5px; display: inline-block; text-decoration: none; }
.sunshine--order--item--download:hover { border-color: #FFF; background: var(--sunshine--dark); color: #FFF; }

/* Notices */
#sunshine-notices { text-align: center; }
#sunshine-notices > .sunshine-notice { color: #FFF; margin: 0; background: #00ae08; padding: 10px 20px; margin: 0 0 15px 0; }
#sunshine-notices > .sunshine-notice a { color: #FFF; font-weight: bold; }
#sunshine-notices > .sunshine-notice.error { background: #FF0000; }
#sunshine-notices > .sunshine-notice.warning { background: orange; font-weight: bold; }
#sunshine-notices > .sunshine-notice.notify { background: #ADD8E6; color: var(--sunshine--dark); }

/* Main menu */
#sunshine .sunshine--main-menu { margin: 30px auto; text-align: center; padding: 10px 20px; background: rgba(255,255,255,.9); border-radius: 3px; border: 1px solid rgba(0,0,0,.1); }
#sunshine .sunshine--main-menu .sunshine--main-menu--toggle,
#sunshine .sunshine--main-menu input { display: none; }
#sunshine .sunshine--main-menu ul { display: flex; gap: 20px; padding: 0; margin: 0; }
#sunshine .sunshine--main-menu li { display: inline-block !important; margin: 0 !important; padding: 0 !important; position: relative; }
#sunshine .sunshine--main-menu li.sunshine--account,
#sunshine .sunshine--main-menu li.sunshine--login { flex-grow: 10; text-align: right; }
#sunshine .sunshine--main-menu a { text-decoration: none; color: var(--sunshine--dark); }
#sunshine .sunshine--main-menu a:hover { color: var(--sunshine--gray); }
#sunshine .sunshine--main-menu .sunshine--count { display: inline-block; width: 18px; height: 18px; text-align: center; font-size: 11px; line-height: 18px; border-radius: 50%; background: rgba(0,0,0,.4); margin-left: 5px; }
#sunshine .sunshine--main-menu .sunshine--selected a { font-weight: bold; }

body > .sunshine--main-menu { position: fixed; z-index: 99997; left: 0; bottom: 0; right: 0; margin: 0; padding: 20px 5%; box-shadow: 0 0 25px rgba(0,0,0,.2); border: none; }

/* Embedding */
.sunshine--embed { margin-top: 40px; }

/* ProPhoto Overrides */
.sunshine #sunshine .pp-img-protect { width: auto !important; }

/* ----------------------------------- */
/* MODAL
/* ----------------------------------- */
body.sunshine--modal--open { position: relative; overflow: hidden; }
#sunshine--modal--overlay { content: ""; position: fixed; z-index: 999998; top: 0; left: 0; right: 0; bottom: 0; background: #E8E8E8; opacity: .95; }
#sunshine--modal { position: fixed; z-index: 999999; left: 50%; top: 50%; transform: translate(-50%, -50%); max-height: 80vh; max-width: 750px; width: 100%; border-radius: var(--sunshine--border-radius);
	box-shadow:
	  0px 0px 2.2px -6px rgba(0, 0, 0, 0.02),
	  0px 0px 5.3px -6px rgba(0, 0, 0, 0.028),
	  0px 0px 10px -6px rgba(0, 0, 0, 0.035),
	  0px 0px 17.9px -6px rgba(0, 0, 0, 0.042),
	  0px 0px 33.4px -6px rgba(0, 0, 0, 0.05),
	  0px 0px 80px -6px rgba(0, 0, 0, 0.07)
	;
}

#sunshine--modal--content { background: #FFF; color: #000; max-height: 80vh; width: 100%; padding: 40px 70px; border-radius: var(--sunshine--border-radius); overflow-y: scroll; box-sizing: border-box; position: relative; }
#sunshine--modal--content a:not(.sunshine--button) { color: var(--sunshine--dark); }

#sunshine--modal.sunshine--loading { height: 400px; }
#sunshine--modal--error { background: red; color: #FFF; padding: 100px; text-align: center; }
#sunshine--modal--close { cursor: pointer; display: inline-block !important; position: absolute; z-index: 99999; right: 0; top: -30px; line-height: 1 !important; border: none !important; padding: 0 !important; margin: 0 !important; background: none !important; color: var(--sunshine--dark) !important; }
#sunshine--modal--close:before { content: "\f11b"; font-family: "SunshineIcons"; display: inline-block; }
#sunshine--modal--close:hover { opacity: .4; }

.sunshine--modal--title { font-weight: bold; margin: 0 0 15px 0; font-size: 18px; }

#sunshine--image--cart-review { background: var(--sunshine--gray); text-align: center; font-size: 12px; display: flex; justify-content: flex-end; }
#sunshine--image--cart-review a.sunshine--modal--close { text-transform: uppercase; }
#sunshine--image--cart-review a.sunshine--modal--close:before { content: "\f136"; font-family: "SunshineIcons"; display: inline-block; margin-right: 5px; }

.sunshine--mini-cart--empty { padding: 10px 40px; color: #FFF; }
#sunshine--image--cart-review a { display: inline-flex; padding: 10px 40px; text-decoration: none; color: #FFF; gap: 5px; }
#sunshine--image--cart-review a:before { content: "\f149"; font-family: "SunshineIcons"; display: inline-block; margin-right: 2px; }
#sunshine--image--cart-review a:after { content: "\f115"; font-family: "SunshineIcons"; display: inline-block; margin-left: 5px; color: #FFF; }
#sunshine--modal #sunshine--image--cart-review a { border-left: 1px solid rgba(255,255,255,.5); background: rgba(0,0,0,.2); }
#sunshine--modal #sunshine--image--cart-review a:hover { background: var(--sunshine--dark); color: #FFF; }
#sunshine--image--cart-review.sunshine--loading:after { width: 30px; height: 30px; margin-top: -15px; margin-left: -15px; }
#sunshine--image--cart-review .sunshine--mini-cart a { font-weight: bold; color: #FFF; }

#sunshine--image--add-to-cart,
#sunshine--store--product-details { position: relative; width: 100%; height: 100%; display: flex; overflow: auto; /*box-sizing: border-box; display: flex; align-items: stretch; justify-content: space-between;*/ text-align: left; }
#sunshine--image--add-to-cart--header,
#sunshine--store--product-details--header { flex-basis: 35%; box-sizing: border-box; padding: 40px; background-color: var(--sunshine--light-gray); }
#sunshine--image--add-to-cart--header--image { position: relative; top: 50%; transform: translateY(-50%); text-align: center; }
#sunshine--image--add-to-cart--header--image img,
#sunshine--store--product-details--header--product img { max-width: 100%; height: auto; }
#sunshine--image--add-to-cart--header--image span,
#sunshine--store--product-details--header--product--title { font-size: 18px; font-weight: bold; display: block; }
#sunshine--store--product-details--header--product--description { font-size: 14px; }
#sunshine--modal--content #sunshine--image--add-to-cart--header *,
#sunshine--modal--content #sunshine--store--product-details--header * { color: var(--sunshine--gray); }

#sunshine--image--add-to-cart--content,
#sunshine--store--product-details--content { flex-basis: 65%; box-sizing: border-box; padding: 40px; overflow: auto; position: relative; }
#sunshine--image--add-to-cart--content::-webkit-scrollbar { width: 5px; }
#sunshine--image--add-to-cart--content::-webkit-scrollbar-track { background: var(--sunshine--light-gray); }
#sunshine--image--add-to-cart--content::-webkit-scrollbar-thumb { background: var(--sunshine--gray); }
#sunshine--image--add-to-cart--content::-webkit-scrollbar-thumb:hover { background: var(--sunshine--dark); }

.sunshine--modal--tablist--nav { padding: 0; margin: 0 0 15px 0; display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; }
.sunshine--modal--tablist--nav ul { display: flex; flex-wrap: wrap; gap: 5px; align-items: flex-start; list-style: none; margin: 0; padding: 0; overflow: scroll; -ms-overflow-style: none; scrollbar-width: none; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; }
.sunshine--modal--tablist--nav ul::-webkit-scrollbar { display: none; }
.sunshine--modal--tablist--nav li { margin: 0; padding: 0; font-size: 16px; scroll-snap-align: start; cursor: pointer; }
.sunshine--modal--tablist--nav li,
.sunshine--modal--tablist--nav a { text-decoration: none; color: var(--sunshine--gray); background: var(--sunshine--light-gray); border-radius: 3px; display: inline-block; padding: 5px 18px; font-size: 12px; white-space: nowrap; }
.sunshine--modal--tablist--nav li:hover,
.sunshine--modal--tablist--nav a:hover { background: var(--sunshine--gray); color: #FFF; }
.sunshine--modal--tablist--nav li.active { background: var(--sunshine--dark); color: #FFF; }
.sunshine--modal--tablist--nav a#sunshine--image--add-to-cart--store { margin-left: auto; background: var(--sunshine--gray); color: #FFF; }
.sunshine--modal--tablist--nav a#sunshine--image--add-to-cart--store:hover { background: var(--sunshine--dark); }

.sunshine--image--add-to-cart--category { margin-top: 40px; }
.sunshine--image--add-to-cart--category-name { color: var(--sunshine--dark); font-size: 15px; font-weight: bold; text-transform: uppercase; }
.sunshine--image--add-to-cart--category-description { color: var(--sunshine--dark-gray); font-size: 15px; padding: 10px 0; }
.sunshine--image--add-to-cart--product-list { position: relative; border-bottom: 1px solid var(--sunshine--light-gray); }
.sunshine--image--add-to-cart--product-list table { border-collapse: collapse; border: none; width: 100%; }
.sunshine--image--add-to-cart--product-list .sunshine--image--add-to-cart--product-item { cursor: pointer; display: flex; gap: 20px; justify-content: space-between; align-items: center; border-top: 1px solid var(--sunshine--light-gray); padding: 10px 0; font-size: 20px; }
.sunshine--image--add-to-cart--product-list .sunshine--image--add-to-cart--product-item:hover { background-color: var(--sunshine--light-gray); }
.sunshine--image--add-to-cart--product-list--name { flex-basis: 50%; flex-grow: 10; }
.sunshine--image--add-to-cart--product-list--name img { max-width: 50px; height: auto; vertical-align: middle; margin-right: 20px; }
.sunshine--image--add-to-cart--product-list--action { text-align: right; white-space: nowrap; }

input.sunshine--qty { width: 60px !important; background: #FFF !important; color: var(--sunshine--dark) !important; font-size: .9em !important; line-height: 1; font-weight: bold; text-align: center; margin: 0; border: 1px solid var(--sunshine--light-gray); padding: 3px 5px;  }
button.sunshine--qty--down,
button.sunshine--qty--up { cursor: pointer; display: inline-block !important; vertical-align: middle; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; color: var(--sunshine--gray) !important; box-shadow: none !important; }
button.sunshine--qty--down:hover,
button.sunshine--qty--up:hover { background: none !important; color: var(--sunshine--dark-gray) !important; }
button.sunshine--qty--down span,
button.sunshine--qty--up span { display: inline-block; text-indent: -9999px; }
button.sunshine--qty--down button:hover,
button.sunshine--qty--up button:hover { color: var(--sunshine--dark); }
button.sunshine--qty--down:before,
button.sunshine--qty--up:before { font-family: "SunshineIcons"; }
button.sunshine--qty--down:before { content: "\f11d"; }
button.sunshine--qty--up:before { content: "\f11c"; }

#sunshine--modal .sunshine--form .sunshine--form--field { display: flex; margin: 10px 0 0 0; text-align: left; align-items: center; gap: 15px; }
#sunshine--modal .sunshine--form .sunshine--form--field label { width: 100px; flex-grow: 0; }
#sunshine--modal .sunshine--form .sunshine--form--field input,
#sunshine--modal .sunshine--form .sunshine--form--field select { flex-grow: 5; }
#sunshine--modal .sunshine--form .sunshine--form--submit { margin-top: 20px; }

/* Modal add to cart */
#sunshine--modal.sunshine--modal--add_to_cart,
#sunshine--modal.sunshine--modal--store_product { max-width: 1260px; }
#sunshine--modal.sunshine--modal--add_to_cart #sunshine--modal--content,
#sunshine--modal.sunshine--modal--store_product #sunshine--modal--content,
#sunshine--modal.sunshine--modal--general_product #sunshine--modal--content { padding: 0; display: flex; flex-direction: column; height: 80vh; }

.sunshine--success { position: absolute; z-index: 999; top: 0; right: 0; bottom: 0; left: 0; background: rgba(20,170,83,.8); }
.sunshine--success:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); content: "\f117"; font-family: "SunshineIcons"; font-size: 100px; color: #FFF; }

/* Multi-image select */
.sunshine--multi-image-select { position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: scroll; z-index: 100; background: #FFF; }
.sunshine--multi-image-select--header { position: fixed; z-index: 100; bottom: 0; right: 0; width: 65%; box-sizing: border-box; padding: 10px 40px; background: #FFF; display: flex; align-items: center; justify-content: space-between; box-shadow: 0 0 15px rgba(0,0,0,.1); }
.sunshine--completed .sunshine--multi-image-select--header--count { color: green; font-weight: bold; }
.sunshine--completed .sunshine--select-images--header--count:before { content: '\f118'; font-family: "SunshineIcons"; display: inline-block; font-size: 16px; color: green; margin-right: 5px; vertical-align: middle; }
.sunshine--multi-image-select--sources { padding: 20px 40px; border-bottom: 1px solid var(--sunshine--light-gray); display: flex; justify-content: space-between; align-items: center; }
.sunshine--multi-image-select--sources select { width: auto; display: inline-block; margin-left: 7px; }
.sunshine--multi-image-select--source--list { padding: 40px 40px 80px 40px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 40px; align-items: center; }
.sunshine--multi-image-select--image,
.sunshine--multi-image-select--image * { text-align: center; cursor: pointer; }
.sunshine--multi-image-select--image label { display: block; position: relative; }
.sunshine--multi-image-select--image img { max-width: 100%; max-height: 175px; width: auto; height: auto; }
.sunshine--multi-image-select--image { display: block; position: relative; overflow: hidden; }
.sunshine--multi-image-select--image input { position: absolute; user-select: none; width: 0; height: 0; opacity: 0; }
.sunshine--multi-image-select--image input:checked + label:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); content: "\f118"; font-family: "SunshineIcons"; background: #FFF; line-height: 1; border-radius: 50%; color: var(--sunshine--dark-gray); font-weight: bold; font-size: 32px; }
.sunshine--multi-image-select--image input:checked + label > img { border: 2px solid var(--sunshine--dark); }
.sunshine--multi-image-select--selected-images { display: flex; gap: 5px; margin-top: 15px; }
.sunshine--multi-image-select--selected-images--item { cursor: pointer; height: 50px; width: 50px; background: var(--sunshine--light-gray); position: relative; }
.sunshine--multi-image-select--selected-images--item:after { content: "+"; font-size: 30px; line-height: 1; position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.sunshine--multi-image-select--selected-images--item img { position: relative; z-index: 10; height: 100%; width: 100%; object-fit: cover; object-position: center; }
.sunshine--multi-image-select--qty { font-size: 14px; color: var(--sunshine--gray); }
.sunshine--multi-image-select--source--list[data-product-type="download"] .sunshine--multi-image-select--qty { display: none; }

#sunshine--product-options--image-select { display: flex; flex-wrap: wrap; }
#sunshine--product-options--image-select .sunshine--multi-image-select--selected-images { flex-basis: 100%; }

.sunshine--product-options--char-count { font-size: 14px; color: var(--sunshine--gray); }

.sunshine--modal--multi_image_edit #sunshine--modal--content { height: 80vh;  }
.sunshine--modal--multi_image_product_images_edit #sunshine--modal--content,
.sunshine--modal--package_fill #sunshine--modal--content,
.sunshine--modal--package_edit #sunshine--modal--content { overflow: scroll; }
.sunshine--modal--multi_image_product_images_edit #sunshine--modal--content { padding: 0; }
.sunshine--modal--multi_image_product_images_edit .sunshine--multi-image-select { position: static; min-height: 100vh; }
.sunshine--modal--multi_image_product_images_edit .sunshine--multi-image-select--header,
.sunshine--modal--package_fill .sunshine--multi-image-select--header,
.sunshine--modal--package_edit .sunshine--multi-image-select--header,
.sunshine--modal--multi_image_edit .sunshine--multi-image-select--header { width: 100%; left: 0; }

/* Modal Comments */
#sunshine--image--comments { width: 100%; padding: 40px; box-sizing: border-box; display: flex; gap: 30px; justify-content: space-between; text-align: left; }
#sunshine--image--comments--header { flex-basis: 25%; }
#sunshine--image--comments--header--image img { max-width: 175px; height: auto; }
#sunshine--image--comments--header--image span { font-size: 18px; font-weight: bold; display: block; }

#sunshine--image--comments--content { flex-basis: 65%; }
#sunshine--image--comments--add--title { font-weight: bold; font-size: 20px; }
#sunshine--image--comments--add .sunshine--image--comments--add--field { margin: 0 0 10px 0; }
#sunshine--image--comments--add .sunshine--image--comments--add--field label { display: block; font-size: 12px; text-transform: uppercase; margin: 0 0 3px 0; }
#sunshine--image--comments--add input,
#sunshine--image--comments--add textarea { width: 100%; box-sizing: border-box; padding: 5px; border: 1px solid #CCC; border-radius: 3px; background: #FFF; font-size: 16px; }
#sunshine--image--comments--add textarea { height: 200px; }

.sunshine--image--comment { border-bottom: 1px solid #CCC; padding: 0 0 15px 0; margin: 0 0 15px 0; }
.sunshine--image--comment--author { font-weight: bold; font-size: 14px; }
.sunshine--image--comment--date { font-style: italic; font-size: 14px; }
.sunshine--image--comment--content { font-size: 16px; }
.sunshine--image--comment--approval { font-size: 11px; color: var(--sunshine--gray); font-style: italic; }

.sunshine--error { background: red; color: #FFF !important; padding: 5px 15px; font-size: 15px; line-height: 1.1; margin: 0 0 15px 0; }
.sunshine--error a { color: #FFF !important; text-decoration: underline; }

/* Modal Require Account */
#sunshine--account--login-signup { width: 100%; display: flex; flex-wrap: wrap; gap: 30px; justify-content: space-between; text-align: left; box-sizing: border-box; }
#sunshine--account--login-signup--header { flex-basis: 100%; background: var(--sunshine--light-gray); color: var(--sunshine--dark); padding: 10px 20px; border-radius: 5px; text-align: center; font-size: 15px; }
#sunshine--account--login-signup #sunshine--account--login,
#sunshine--account--login-signup #sunshine--account--signup { flex-basis: 45%; flex-grow: 10; }

#sunshine--modal.sunshine--modal--signup,
#sunshine--modal.sunshine--modal--login { max-width: 500px; }

/* Share modal */
#sunshine--modal.sunshine--modal--share { max-width: 500px; }
#sunshine--modal.sunshine--modal--share #sunshine--modal--content { padding: 30px 50px; }
#sunshine--image--share--url { background: var(--sunshine--light-gray); padding: 5px; display: flex; }
#sunshine--image--share--url input { font-size: 12px; padding: 5px 10px; margin: 0; box-sizing: border-box; border: 0; flex-grow: 10; }
#sunshine--image--share--url button { background: var(--sunshine--dark-gray); color: #FFF; padding: 10px 25px; margin: 0; border: none; border-radius: 0; }
#sunshine--image--share--services { margin-top: 40px; display: flex; justify-content: center; gap: 20px; }
#sunshine--image--share--services { text-decoration: none; }
#sunshine--image--share--services a:before { content: ""; display: block; height: 40px; background-size: auto 40px; background-repeat: no-repeat; background-position: center; margin: 0 0 3px 0; }
#sunshine--image--share--services a#sunshine--facebook:before { background-image: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/images/facebook.svg); }
#sunshine--image--share--services a#sunshine--twitter:before { background-image: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/images/twitter.svg); }
#sunshine--image--share--services a#sunshine--pinterest:before { background-image: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/images/pinterest.svg); }
#sunshine--image--share--services a#sunshine--whatsapp:before { background-image: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/images/whatsapp.svg); }

/* Submit favorites */
.sunshine--page--favorites .sunshine--action-menu { margin: 0 0 20px 0; text-align: center; }
#sunshine--modal.sunshine--modal--share_favorites { max-width: 500px; }
#sunshine--modal.sunshine--modal--share_favorites textarea { width: 100%; height: 100px; }
.sunshine--favorites--share--disclaimer { font-weight: bold; font-size: 12px; line-height: 1.2; }

/* Product Options */
#sunshine--modal button.sunshine--product--show-details { border: none; background: none; padding: 0; font-size: 22px; text-transform: uppercase; cursor: pointer; }
#sunshine--modal button.sunshine--product--show-details:after { content: "\f115"; font-family: "SunshineIcons"; display: inline-block; margin-left: 5px; color: var(--sunshine--dark); }
#sunshine--modal button.sunshine--product--show-details span { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
#sunshine--modal button.sunshine--product--show-details:hover { background: none; }
#sunshine--modal button.sunshine--product--show-details:hover:after { color: var(--sunshine--gray); }

#sunshine--product--details--title { color: var(--sunshine--dark); font-weight: bold; font-size: 20px; margin: 0 0 20px 0; }
#sunshine--product--details--image { float: right; margin: 0 0 30px 40px; max-width: 30%; }
#sunshine--product--details--image img { max-width: 100%; height: auto; }
#sunshine--product--details--description * { font-size: 15px; }
#sunshine--product--details--comments input { margin: 0 0 20px 0; padding: 10px 15px; width: 100%; box-sizing: border-box; border: 1px solid var(--sunshine--medium-gray); }

/* Hide qty for download products */
#sunshine--product--details.sunshine--product-download #sunshine--product--details--qty,
#sunshine--store--product-details.sunshine--product-download #sunshine--product--details--qty { display: none; }


.sunshine--product-options--item--select .sunshine--product-options--item--options { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 15px; }
.sunshine--product-options--item--select .sunshine--product-options--item--options label { position: relative; cursor: pointer; }
.sunshine--product-options--item--select .sunshine--product-options--item--options label span,
.sunshine--product-options--item--select button { display: inline-block; padding: 8px 20px; border: 1px solid var(--sunshine--gray); color: var(--sunshine--dark); font-weight: normal; border-radius: 3px; font-size: 13px; background: none; overflow: hidden; }
.sunshine--product-options--item--select .sunshine--product-options--item--options label:hover span { background: var(--sunshine--light-gray); }
.sunshine--product-options--item--select .sunshine--product-options--item--options label input { position: absolute; left: -9999px; }
.sunshine--product-options--item--select .sunshine--product-options--item--options label input:checked + span { background: var(--sunshine--gray); color: #FFF; }

.sunshine--product-options--item--options--info { display: none; }
.sunshine--product-options--item--options label { position: relative; }
.sunshine--product-options--item--options label:hover .sunshine--product-options--item--options--info { display: block; position: absolute; bottom: calc( 100% + 10px ); left: 50%; transform: translateX(-50%); background-color: var(--sunshine--dark-gray); padding: 8px; }
.sunshine--product-options--item--options--info:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(136, 183, 213, 0);
	border-top-color: var(--sunshine--dark-gray);
	border-width: 7px;
	margin-left: -7px;
}
.sunshine--product-options--item--options--image img { display: block; max-width: 150px; max-height: 100px; width: auto; height: auto; }
.sunshine--product-options--item--options--description { min-width: 150px; text-align: center; font-size: 11px; line-height: 1.1; color: #FFF; }
.sunshine--product-options--item--options--image + .sunshine--product-options--item--options--description { margin-top: 6px; }

.sunshine--product-options--item { margin: 0 0 30px 0; }
.sunshine--product-options--item--name { color: var(--sunshine--dark); font-size: 15px; font-weight: bold; text-transform: uppercase; }
.sunshine--product-options--item--description { font-size: 14px; color: var(--sunshine--gray); }
.sunshine--product-options--name .sunshine--required { font-weight: normal; text-transform: none; font-size: 14px; }
#sunshine--modal--content .sunshine--product-options--description { font-size: 14px; color: var(--sunshine--gray); }

button.sunshine--product-options--clear { display: none; flex-basis: 100%; font-size: 12px; margin: 10px 0 0 0; color: var(--sunshine--gray); border: none; padding: 0; text-align: left; }

#sunshine--product--details--price { color: var(--sunshine--dark); font-size: 18px; font-weight: bold; margin: 20px 0; }
#sunshine--product--details--qty { margin: 0 0 20px 0; border: 1px solid var(--sunshine--light-gray); padding: 10px 15px; border-radius: 3px; display: inline-flex; align-items: center; gap: 5px; }
#sunshine--product--details--qty input.sunshine--qty { padding: 0; border: none; margin: 0 !important; text-align: center; }
#sunshine--product--details--max-qty { font-size: 80%; color: var(--sunshine-gray); margin: 0 0 15px 0; }

#sunshine--product--details--cart-qty,
#sunshine--product--details--disallowed { margin: 20px 0; font-size: 80%; color: var(--sunshine--gray); }

#sunshine--product--details--qty-discounts { margin: 20px 0; }
#sunshine--product--details--qty-discounts--title { font-weight: bold; }
#sunshine--product--details--qty-discounts-calc { font-size: 80%; font-style: italic; }

#sunshine--product--details--action { display: flex; gap: 20px; }

.sunshine--option-required { outline: 3px solid red; padding: 15px 20px; }

button#sunshine--product--details--close { float: right; cursor: pointer; border: none; background: none; font-size: 12px; text-transform: uppercase; color: var(--sunshine--gray); padding: 0; margin-top: 10px; }
button#sunshine--product--details--close:before { content: "\f109"; font-family: "SunshineIcons"; margin-right: 5px; display: inline-block; }
button#sunshine--product--details--close:hover { color: var(--sunshine--dark); }

/* Store */
#sunshine--store--categories { display: grid; grid-template-columns: repeat(auto-fit, minmax(30%, 1fr)); gap: 50px; margin-top: 50px; }

.sunshine--store--category--image { margin-bottom: 15px; }
.sunshine--store--category--image img { max-width: 100%; height: auto; }
.sunshine--store--category--name { font-size: 150%; font-weight: bold; margin: 0 0 10px 0; }
.sunshine--store--category--description { margin: 0 0 10px 0; }
.sunshine--store--category--products { position: relative; border-bottom: 1px solid var(--sunshine--light-gray); }
.sunshine--store--product-item { cursor: pointer; display: flex; gap: 20px; justify-content: space-between; align-items: center; border-top: 1px solid var(--sunshine--light-gray); padding: 10px 0; font-size: 20px; }
.sunshine--store--product-item:hover { background-color: var(--sunshine--light-gray); }
.sunshine--store--product-item--image img { max-width: 50px; height: auto; }
.sunshine--store--product-item--name { flex-basis: 50%; flex-grow: 10; }
.sunshine--store--product-item--name img { max-width: 50px; height: auto; vertical-align: middle; margin-right: 20px; }
.sunshine--store--product-item--action { text-align: right; white-space: nowrap; }

#sunshine--store .sunshine--store--product-item--select-options { border: none; background: none; padding: 0; font-size: 22px; text-transform: uppercase; cursor: pointer; }
#sunshine--store .sunshine--store--product-item--select-options:after { content: "\f115"; font-family: "SunshineIcons"; display: inline-block; margin-left: 5px; color: var(--sunshine--dark); }
#sunshine--store .sunshine--store--product-item--select-options span { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
#sunshine--store .sunshine--store--product-item--select-options:hover { background: none; }
#sunshine--store .sunshine--store--product-item--select-options:hover:after { color: var(--sunshine--gray); }

/* Price List */
.sunshine--price-list--categories { display: grid; grid-template-columns: repeat(var(--columns), 1fr); gap: 50px; margin-top: 20px; }
.sunshine--price-list--category--image { margin-bottom: 15px; }
.sunshine--price-list--category--image img { max-width: 100%; height: auto; }
.sunshine--price-list--category--name { font-size: 150%; font-weight: bold; margin: 0 0 10px 0; }
.sunshine--price-list--category--products { position: relative; border-bottom: 1px solid var(--sunshine--light-gray); }
.sunshine--price-list--product-item { display: flex; gap: 20px; justify-content: space-between; align-items: center; border-top: 1px solid var(--sunshine--light-gray); padding: 10px 0; font-size: 20px; }
.sunshine--price-list--product-item--name { flex-basis: 50%; flex-grow: 10; }
.sunshine--price-list--product-item--name img { max-width: 50px; height: auto; vertical-align: middle; margin-right: 20px; }

/* Digital Downloads */
#sunshine--modal.sunshine--modal--download_free_image #sunshine--modal--content,
#sunshine--modal.sunshine--modal--download_credit_image #sunshine--modal--content,
#sunshine--modal.sunshine--modal--download_history_image #sunshine--modal--content,
#sunshine--modal.sunshine--modal--download_free_gallery #sunshine--modal--content,
#sunshine--modal.sunshine--modal--gallery_add_to_cart #sunshine--modal--content,
#sunshine--modal.sunshine--modal--download_order_files #sunshine--modal--content,
#sunshine--modal.sunshine--modal--download_order_item #sunshine--modal--content { text-align: center; }
#sunshine--modal .sunshine--download--required-data--title,
#sunshine--modal .sunshine--modal--download--title { font-size: 20px; font-weight: bold; }
#sunshine--modal .sunshine--download--required-data--title:before,
#sunshine--modal .sunshine--modal--download--title:before { display: block; content: "\f107"; font-family: "SunshineIcons"; font-size: 50px; text-align: center; margin: 0 0 15px 0; }

#sunshine--download--gallery-add-to-cart--image { margin: 0 0 30px 0; }
#sunshine--download--gallery-add-to-cart--title { font-size: 24px; font-weight: bold; }
#sunshine--download--gallery-add-to-cart--price { margin-top: 30px; font-size: 20px; font-weight: bold; }
#sunshine--download--gallery-add-to-cart--button { margin-top: 15px; }

#sunshine--modal--download--files { display: flex; flex-direction: column; gap: 5px; }
#sunshine--modal--download--files a { border: 1px solid var(--sunshine--light-gray); padding: 5px 20px; border-radius: 5px; }

/* Packages */
.sunshine--modal--package_fill,
.sunshine--modal--package_edit { height: 80vh; }
.sunshine--modal--package_fill #sunshine--modal--content,
.sunshine--modal--package_edit #sunshine--modal--content { height: 100%; }
#sunshine--package--fill--items { display: flex; flex-wrap: wrap; gap: 30px; }
#sunshine--package--fill--title,
#sunshine--multi-image--fill--title { flex-basis: 100%; font-size: 22px; font-weight: bold; margin-bottom: 30px; }
.sunshine--package--fill--item,
.sunshine--multi-image--fill--item { margin-bottom: 30px; display: flex; flex-wrap: wrap; }
.sunshine--package--fill--item--title,
.sunshine--multi-image--fill--item--title { font-weight: bold; }
.sunshine--package--fill--item--title span,
.sunshine--multi-image--fill--item--title span { font-weight: normal; font-size: 80%; color: var(--sunshine--dark-gray); display: inline-block; margin-left: 10px; }
button.sunshine--multi-image-select--open { visibility: hidden; }
.sunshine--multi-image-select--selected-images { flex-basis: 100%; display: flex; flex-wrap: wrap; }

/*
#sunshine--package--fill--items .sunshine--multi-image-select--selected-images--item { width: 150px; height: 150px; }
*/

.sunshine--cart--item--package--product--incomplete { font-weight: bold; color: red; }

.sunshine--product-details--package-items--title { font-size: 16px; font-weight: bold; text-transform: uppercase; }
.sunshine--product-details--package-items ul,
.sunshine--product-details--package-items li { margin: 0; padding: 0; list-style: none; }

/* Session Fees */
.sunshine--session-fee--dates { margin: 0 0 40px 0;  }
.sunshine--session-fee--date { position: relative; display: inline-block; margin: 0 20px 10px 0; }
.sunshine--session-fee--date label { display: inline-block; padding: 7px 15px; border: 1px solid var(--sunshine--medium-gray); border-radius: 3px; cursor: pointer; }
.sunshine--session-fee--date input { position: absolute; left: -999999px; }
.sunshine--session-fee--date input[type="radio"]:checked + label { background-color: var(--sunshine--medium-gray); color: #000; }
.sunshine--session-fee--date.booked label { color: var(--sunshine--medium-gray); cursor: not-allowed; }

/* Dark Mode */
.sunshine--dark #sunshine--modal--overlay { background: #1F1F1F; }
.sunshine--dark #sunshine--modal--content { background: var(--sunshine--dark); }
.sunshine--dark #sunshine--modal--content div,
.sunshine--dark #sunshine--modal--content p,
.sunshine--dark #sunshine--modal--content li,
.sunshine--dark #sunshine--modal--content th,
.sunshine--dark #sunshine--modal--content td { color: #FFF; }
.sunshine--dark #sunshine--modal--content input { background: var(--sunshine--dark); color: #FFF; }
.sunshine--dark #sunshine--modal--close { color: #FFF; }
.sunshine--dark #sunshine--image--cart-review a { background: #111; color: #FFF; }
.sunshine--dark #sunshine--image--add-to-cart--categories li { color: #FFF; }
.sunshine--dark #sunshine--image--add-to-cart--categories { border-color: #FFF; }

/* JUSTIFIED GALLERY CSS */
#sunshine--gallery-items.sunshine--layout--justified,
#sunshine--image-items.sunshine--layout--justified {
	display: flex;
	gap: 5px;
	overflow: hidden;
	flex-wrap: wrap;
	margin: 0;
	--sunshine--row-height: 250px; /* Default min height for rows */
}
#sunshine--gallery-items.sunshine--layout--justified:after,
#sunshine--image-items.sunshine--layout--justified:after {
	content: '';
	flex-grow: 1000000000;
	min-width: 300px;
	height: 0;
}
#sunshine--gallery-items.sunshine--layout--justified figure.sunshine--gallery-item,
#sunshine--image-items.sunshine--layout--justified figure.sunshine--image-item {
	position: relative;
	display: block;
	flex-grow: calc(var(--width) * (100000 / var(--height)));
	flex-basis: calc(var(--sunshine--row-height) * (var(--width) / var(--height)));
	aspect-ratio: var(--width) / var(--height);
	overflow: hidden;
	margin: 0;
	padding: 0;
}
#sunshine--gallery-items.sunshine--layout--justified figure.sunshine--gallery-item > a,
#sunshine--image-items.sunshine--layout--justified figure.sunshine--image-item > a {
	position: absolute;
	width: 100%;
	height: 100%;
	display: block;
}
#sunshine--gallery-items.sunshine--layout--justified figure.sunshine--gallery-item > a > img,
#sunshine--image-items.sunshine--layout--justified figure.sunshine--image-item > a > img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Column-specific row height adjustments */
#sunshine--gallery-items.sunshine--layout--justified.sunshine--col-2,
#sunshine--image-items.sunshine--layout--justified.sunshine--col-2 {
	--sunshine--row-height: 350px;
}
#sunshine--gallery-items.sunshine--layout--justified.sunshine--col-3,
#sunshine--image-items.sunshine--layout--justified.sunshine--col-3 {
	--sunshine--row-height: 250px;
}
#sunshine--gallery-items.sunshine--layout--justified.sunshine--col-4,
#sunshine--image-items.sunshine--layout--justified.sunshine--col-4 {
	--sunshine--row-height: 200px;
}
#sunshine--gallery-items.sunshine--layout--justified.sunshine--col-5,
#sunshine--image-items.sunshine--layout--justified.sunshine--col-5 {
	--sunshine--row-height: 180px;
}
#sunshine--gallery-items.sunshine--layout--justified.sunshine--col-6,
#sunshine--image-items.sunshine--layout--justified.sunshine--col-6 {
	--sunshine--row-height: 150px;
}

#sunshine--gallery-items.sunshine--layout--justified figure.sunshine--gallery-item > h2,
#sunshine--gallery-items.sunshine--layout--masonry figure.sunshine--gallery-item > h2 { position: absolute; bottom: 0; left: 0; right: 0; text-align: center; background: linear-gradient(0deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,0) 100%); }
#sunshine--gallery-items.sunshine--layout--justified figure.sunshine--gallery-item > h2 > a,
#sunshine--gallery-items.sunshine--layout--masonry figure.sunshine--gallery-item > h2 > a { display: block; padding: 10px 15px; color: #FFF; }

#sunshine--gallery-items.sunshine--layout--masonry figure.sunshine--gallery-item > h2 > a img { vertical-align: bottom; }

/* MASONRY LAYOUT */
#sunshine--gallery-items.sunshine--layout--masonry,
#sunshine--image-items.sunshine--layout--masonry {
	grid-template-rows: masonry;
}
#sunshine--image-items.sunshine--layout--masonry figure.sunshine--image-item {
	margin-bottom: 0;
}


#sunshine--gallery-items.sunshine--layout--masonry,
#sunshine--image-items.sunshine--layout--masonry {
	display: block;
}
#sunshine--gallery-items.sunshine--layout--masonry figure.sunshine--gallery-item,
#sunshine--image-items.sunshine--layout--masonry figure.sunshine--image-item {
	width: calc((100% - 5px)/2);
	margin-bottom: 5px;
}

#sunshine--gallery-items.sunshine--layout--masonry.sunshine--col-3 figure.sunshine--gallery-item,
#sunshine--image-items.sunshine--layout--masonry.sunshine--col-3 figure.sunshine--image-item {
	width: calc((100% - 10px)/3);
}

#sunshine--gallery-items.sunshine--layout--masonry.sunshine--col-4 figure.sunshine--gallery-item,
#sunshine--image-items.sunshine--layout--masonry.sunshine--col-4 figure.sunshine--image-item {
	width: calc((100% - 15px)/4);
}

#sunshine--gallery-items.sunshine--layout--masonry.sunshine--col-5 figure.sunshine--gallery-item,
#sunshine--image-items.sunshine--layout--masonry.sunshine--col-5 figure.sunshine--image-item {
	width: calc((100% - 20px)/5);
}


/*.sunshine-masonry #sunshine--image-items > ul { clear: none !important; margin: 0 0 2px 0; display: block; }
.sunshine-masonry #sunshine--image-items .sunshine--col-2 li.sunshine--image-item { width: 50%; }
.sunshine-masonry #sunshine--image-items .sunshine--col-3 li.sunshine--image-item { width: 33.3333%; width: calc( 100% / 3 ); }
.sunshine-masonry #sunshine--image-items .sunshine--col-4 li.sunshine--image-item { width: 25%;  }
.sunshine-masonry #sunshine--image-items .sunshine--col-5 li.sunshine--image-item { width: 20%; }
.sunshine-masonry #sunshine--image-items li img { display: block; width: 100%; height: auto; }
*/

/* Responsive */
@media screen and (max-width: 767px) {

	#sunshine--image-items.sunshine--col-3,
	#sunshine--image-items.sunshine--col-4,
	#sunshine--image-items.sunshine--col-5,
	#sunshine--gallery-items.sunshine--col-3,
	#sunshine--gallery-items.sunshine--col-4,
	#sunshine--gallery-items.sunshine--col-5 { grid-template-columns: 1fr 1fr; }

	#sunshine--page-header { display: block; }

}
@media screen and (max-width: 640px) {

	/* TODO: RESPONSIVE GALLERY STYLES */

	/* Cart */
	#sunshine--cart--items th { display: none; }
	#sunshine--cart--items td { display: block; text-align: left !important; padding: 10px 0; border: none; }
	#sunshine--cart--items td .sunshine--cart-item--image-name,
	#sunshine--cart--items td .sunshine--cart-item--product-name,
	#sunshine--cart--items td .sunshine--cart-item--product-options,
	#sunshine--cart--items td .sunshine--cart-item--comments { margin-left: 100px; }
	#sunshine--cart--items td:before { content: attr(data-label); font-size: 13px; font-weight: bold; display: block; width: 100px; float: left; clear: left; margin: 5px 0 0 0; }
	#sunshine--cart--items td.sunshine--cart-item--image:before { display: none; }
	#sunshine--cart--items td.sunshine--cart-item--image { border-top: 1px solid var(--sunshine--light-gray); padding-top: 15px; width: 100%; }

	#sunshine--cart--update-button { float: none; }
	#sunshine--cart--totals { max-width: 100%; width: 100%; float: none; margin-top: 40px; }

	/* Checkout */
	#sunshine--checkout--main { grid-template-columns: 1fr; background: none; padding: 0; }
	#sunshine--checkout--steps { order: 2; flex-basis: 100%; background: var(--sunshine--light-gray); padding: 20px 30px; border-radius: 5px; }
	#sunshine--checkout--summary { order: 1; flex-basis: 100%; background: var(--sunshine--light-gray); }

	#sunshine--checkout--order-review,
	#sunshine--checkout--order-review h2 { display: none; margin-top: 20px; }
	#sunshine--checkout--order-review--toggle { width: 100%; display: flex; gap: 10px; justify-content: space-between; align-items: center; border: none !important; background: none !important; padding: 0 !important; margin: 0 !important; }
	#sunshine--checkout--order-review--toggle span { font-weight: bold; margin-left: auto; }
	#sunshine--checkout--order-review--toggle:after { content: ""; display: inline-block; margin-right: 5px; border-top: 5px solid var(--sunshine--dark); border-right: 5px solid transparent; border-left: 5px solid transparent; }
	#sunshine--checkout--order-review--toggle.sunshine--active:after { transform: rotate(180deg); }
	
	#sunshine--checkout fieldset.sunshine--checkout--section-active .sunshine--form--fields { display: block; }
	#sunshine--checkout #sunshine--form--field--payment_method .sunshine--form--field--radio-option { flex-basis: 100%; border: 1px solid var(--sunshine--light-gray); }

	/* Modal */
	#sunshine--modal { top: 0; bottom: 0; left: 0; right: 0; max-height: 100%; height: 100%; transform: none; }
	#sunshine--modal--overlay { background: #FFF; }
	#sunshine--modal--contentx { position: relative; top: 50%; transform: translateY(-50%); max-height: 100%;  }
	#sunshine--modal--close { right: 10px; top: 5px; }
	#sunshine--modal--close:before { font-size: 26px; }
	.sunshine--modal--add_to_cart #sunshine--modal--close:before,
	.sunshine--modal--store_product #sunshine--modal--close:before { color: #FFF; }

	#sunshine--modal.sunshine--modal--add_to_cart #sunshine--modal--content,
	#sunshine--modal.sunshine--modal--store_product #sunshine--modal--content { height: 100% !important; max-height: 100% !important; border-radius: 0; }

	#sunshine--image--cart-review { text-align: left; justify-content: flex-start; }
	#sunshine--modal #sunshine--image--cart-review .sunshine--mini-cart a { border-left: none; border-right: 1px solid rgba(255,255,255,.5); }
	.sunshine--mini-cart--empty,
	#sunshine--image--cart-review a { padding: 10px 30px; }

	#sunshine--image--add-to-cart,
	#sunshine--store--product-details { flex-direction: column; padding: 0; }
	#sunshine--image--add-to-cart--header { padding: 20px; background-color: none; }
	#sunshine--image--add-to-cart--header--image { position: static; transform: none; }
	#sunshine--image--add-to-cart--header--image img { height: 180px; width: auto; }

	#sunshine--image--add-to-cart--store { display: none !important; }

	/*
	#sunshine--store--product-details--header--product img,
	#sunshine--store--product-details--header--product--description { display: none; }
	*/

	.sunshine--modal--package_fill { height: 100%; }
	.sunshine--modal--multi_image_product_images_edit #sunshine--modal--content,
	.sunshine--modal--package_fill #sunshine--modal--content,
	.sunshine--modal--package_edit #sunshine--modal--content { height: 100%; max-height: 100%; }

	.sunshine--multi-image-select--list { grid-template-columns: 1fr 1fr; }
	.sunshine--multi-image-select--sources { display: block; }
	.sunshine--multi-image-select--sources label { display: block; margin: 0 0 15px 0; }
	.sunshine--multi-image-select--header { width: 100%; }

	button#sunshine--product--details--close { float: none; margin: 0 0 10px 0; }

	.sunshine--product-options--item--select .sunshine--product-options--item--options,
	.sunshine--product-options--item--select .sunshine--product-options--item--options label,
	.sunshine--product-options--item--select .sunshine--product-options--item--options label span { display: block; margin: 5px 0; }

	/* Main Menu */
	#sunshine .sunshine--main-menu { margin: 0 0 30px 0; }
	#sunshine .sunshine--main-menu nav { display: none; }
	#sunshine .sunshine--main-menu .sunshine--main-menu--open { display: block; }
	#sunshine .sunshine--main-menu .sunshine--main-menu--close { display: none; }
	#sunshine .sunshine--main-menu input[type="checkbox"]:checked ~ nav { display: block; text-align: center; }
	#sunshine .sunshine--main-menu input[type="checkbox"]:checked ~ .sunshine--main-menu--open { display: none; }
	#sunshine .sunshine--main-menu input[type="checkbox"]:checked ~ .sunshine--main-menu--close { display: block !important; margin: 0 0 15px 0; }
	#sunshine .sunshine--main-menu ul { flex-direction: column; text-align: center; }
	#sunshine .sunshine--main-menu li { display: block !important; text-align: center !important; }

	/* Action Menu */
	#sunshine .sunshine--action-menu ul { flex-direction: column; gap: 5px; }
	#sunshine .sunshine--action-menu ul li { width: 100%; }

	/* Image/Gallery List */
	#sunshine--image-items.sunshine--col-3,
	#sunshine--image-items.sunshine--col-4,
	#sunshine--image-items.sunshine--col-5,
	#sunshine--gallery-items.sunshine--col-3,
	#sunshine--gallery-items.sunshine--col-4,
	#sunshine--gallery-items.sunshine--col-5 { grid-template-columns: 1fr; }

	.sunshine--layout--masonry { height: auto !important; }
	.sunshine--layout--masonry > * { position: relative !important; width: 100% !important; top: 0 !important; }

	#sunshine--image-items .sunshine--image-menu { opacity: 1; }

	/* Order */
	#sunshine--order--details { display: block; }

	/* Account */
	#sunshine--account { display: block; }
	#sunshine--account--content { margin-top: 50px; }

	.sunshine--modal--require_login #sunshine--modal--content { padding: 40px; }
	#sunshine--account--login-signup { display: block; }

	/* Store */
	#sunshine--store--categories { grid-template-columns: 1fr; }

	/* Comments */
	.sunshine--modal--comments #sunshine--modal--content { padding: 0; height: 100vh; max-height: 100vh; }
	#sunshine--image--comments { flex-direction: column; }
	#sunshine--image--comments > * { flex-basis: 100%; }

	/* Account > Orders */
	#sunshine--orders thead { display: none; }
	#sunshine--orders td { display: block; padding: 0; }
	#sunshine--orders tr td:first-child { font-weight: bold; }
	#sunshine--orders tr td:last-child { padding-bottom: 15px; }

}
@media screen and (max-width: 480px) {
	.sunshine--form .field-left { width: 100%; float: none; clear: both; }
	.sunshine--form .field-right { width: 100%; float: none; clear: both; }
	#sunshine--checkout .sunshine-payment-method-description { display: block; padding-left: 0; }
	#sunshine--image--add-to-cart--content { padding: 40px 20px; }
	.sunshine--image--add-to-cart--product-list--name img { display: none; }
	#sunshine--product--details--image { float: none; max-width: 100%; margin: 20px 0; }
	.sunshine--multi-image-select--source--list { grid-template-columns: 1fr 1fr; }

	#sunshine--store--product-details--header { display: none; }
	#sunshine--image--add-to-cart--content, #sunshine--store--product-details--content { flex-basis: 100%; }
}

@media (max-width: 640px) {


}@font-face {
  font-family: "SunshineIcons";
  src: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.eot);
  src: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.eot?#iefix) format("embedded-opentype"),
  url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.woff2) format("woff2"),
  url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.woff) format("woff"),
  url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.ttf) format("truetype"),
  url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.svg#font) format("svg");
  font-weight: normal;
  font-style: normal;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  @font-face {
	font-family: "SunshineIcons";
	src: url(//bluesafarimadeira.com/wp-content/plugins/sunshine-photo-cart/assets/fonts/SunshineIcons.svg#SunshineIcons) format("svg");
  }
}

[data-sunshine-icon]:before {
  content: attr(data-sunshine-icon);
}

.sunshine--icon--favorite:before,
.sunshine--icon--heart:before,
.sunshine--icon--shopping-cart:before,
.sunshine--icon--shopping-cart-2:before,
.sunshine--icon--lock:before,
.sunshine--icon--lock-2:before,
.sunshine--icon--downloading-updates:before,
.sunshine--icon--forward-arrow:before,
.sunshine--icon--return:before,
.sunshine--icon--male-user:before,
.sunshine--icon--male-user-2:before,
.sunshine--icon--trash:before,
.sunshine--icon--trash-2:before,
.sunshine--icon--home:before,
.sunshine--icon--home-2:before,
.sunshine--icon--comments:before,
.sunshine--icon--comments-2:before,
.sunshine--icon--crop:before,
.sunshine--icon--right-arrow:before,
.sunshine--icon--forward:before,
.sunshine--icon--ok:before,
.sunshine--icon--ok-2:before,
.sunshine--icon--login:before,
.sunshine--icon--logout-rounded-left:before,
.sunshine--icon--close:before,
.sunshine--icon--plus:before,
.sunshine--icon--minus:before,
.sunshine--icon--purchase-order:before,
.sunshine--icon--lightning-bolt:before,
.sunshine--icon--view:before,
.sunshine--icon--repeat:before,
.sunshine--icon--gallery:before,
.sunshine--icon--settings:before,
.sunshine--icon--product:before,
.sunshine--icon--mail:before,
.sunshine--icon--slider:before,
.sunshine--icon--star:before,
.sunshine--icon--star-2:before,
.sunshine--icon--edit:before,
.sunshine--icon--edit-2:before,
.sunshine--icon--page:before,
.sunshine--icon--tax:before,
.sunshine--icon--checkout:before,
.sunshine--icon--pay:before,
.sunshine--icon--in-transit:before,
.sunshine--icon--web-design:before,
.sunshine--icon--key:before,
.sunshine--icon--upgrade:before,
.sunshine--icon--calendar:before,
.sunshine--icon--documents:before,
.sunshine--icon--left-arrow:before,
.sunshine--icon--list:before,
.sunshine--icon--online-store:before,
.sunshine--icon--zoom-in:before,
.sunshine--icon--circled-play:before,
.sunshine--icon--computers-connecting:before,
.sunshine--icon--albums:before,
.sunshine--icon--pause-button:before,
.sunshine--icon--full-screen:before,
.sunshine--icon--normal-screen:before,
.sunshine--icon--zoom-out:before,
.sunshine--icon--wedding:before,
.sunshine--icon--customer:before,
.sunshine--icon--conference:before,
.sunshine--icon--tourist-guide:before,
.sunshine--icon--portrait:before,
.sunshine--icon--support:before,
.sunshine--icon--chart:before,
.sunshine--icon--cart:before,
.sunshine--icon--cart-2:before,
.sunshine--icon--add-shopping-cart:before,
.sunshine--icon--add-shopping-cart-2:before,
.icons8,
[data-icons8]:before {
  display: inline-block;
  font-family: "SunshineIcons";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  text-decoration: inherit;
  text-rendering: optimizeLegibility;
  text-transform: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}


.sunshine--icon--favorite:before {
  content: "\f101";
}
.sunshine--icon--heart:before {
  content: "\f102";
}
.sunshine--icon--shopping-cart:before {
  content: "\f103";
}
.sunshine--icon--shopping-cart-2:before {
  content: "\f104";
}
.sunshine--icon--lock:before {
  content: "\f105";
}
.sunshine--icon--lock-2:before {
  content: "\f106";
}
.sunshine--icon--downloading-updates:before {
  content: "\f107";
}
.sunshine--icon--forward-arrow:before {
  content: "\f108";
}
.sunshine--icon--return:before {
  content: "\f109";
}
.sunshine--icon--male-user:before {
  content: "\f10a";
}
.sunshine--icon--male-user-2:before {
  content: "\f10b";
}
.sunshine--icon--trash:before {
  content: "\f10c";
}
.sunshine--icon--trash-2:before {
  content: "\f10d";
}
.sunshine--icon--home:before {
  content: "\f10e";
}
.sunshine--icon--home-2:before {
  content: "\f10f";
}
.sunshine--icon--comments:before {
  content: "\f110";
}
.sunshine--icon--comments-2:before {
  content: "\f111";
}
.sunshine--icon--crop:before {
  content: "\f114";
}
.sunshine--icon--right-arrow:before {
  content: "\f115";
}
.sunshine--icon--forward:before {
  content: "\f116";
}
.sunshine--icon--ok:before {
  content: "\f117";
}
.sunshine--icon--ok-2:before {
  content: "\f118";
}
.sunshine--icon--login:before {
  content: "\f119";
}
.sunshine--icon--logout-rounded-left:before {
  content: "\f11a";
}
.sunshine--icon--close:before {
  content: "\f11b";
}
.sunshine--icon--plus:before {
  content: "\f11c";
}
.sunshine--icon--minus:before {
  content: "\f11d";
}
.sunshine--icon--purchase-order:before {
  content: "\f11e";
}
.sunshine--icon--lightning-bolt:before {
  content: "\f120";
}
.sunshine--icon--view:before {
  content: "\f121";
}
.sunshine--icon--repeat:before {
  content: "\f122";
}
.sunshine--icon--gallery:before {
  content: "\f123";
}
.sunshine--icon--settings:before {
  content: "\f124";
}
.sunshine--icon--product:before {
  content: "\f125";
}
.sunshine--icon--mail:before {
  content: "\f126";
}
.sunshine--icon--slider:before {
  content: "\f127";
}
.sunshine--icon--star:before {
  content: "\f128";
}
.sunshine--icon--star-2:before {
  content: "\f129";
}
.sunshine--icon--edit:before {
  content: "\f12a";
}
.sunshine--icon--edit-2:before {
  content: "\f12b";
}
.sunshine--icon--page:before {
  content: "\f12c";
}
.sunshine--icon--tax:before {
  content: "\f12d";
}
.sunshine--icon--checkout:before {
  content: "\f12e";
}
.sunshine--icon--pay:before {
  content: "\f12f";
}
.sunshine--icon--in-transit:before {
  content: "\f130";
}
.sunshine--icon--web-design:before {
  content: "\f131";
}
.sunshine--icon--key:before {
  content: "\f132";
}
.sunshine--icon--upgrade:before {
  content: "\f133";
}
.sunshine--icon--calendar:before {
  content: "\f134";
}
.sunshine--icon--documents:before {
  content: "\f135";
}
.sunshine--icon--left-arrow:before {
  content: "\f136";
}
.sunshine--icon--list:before {
  content: "\f137";
}
.sunshine--icon--online-store:before {
  content: "\f138";
}
.sunshine--icon--zoom-in:before {
  content: "\f139";
}
.sunshine--icon--circled-play:before {
  content: "\f13b";
}
.sunshine--icon--computers-connecting:before {
  content: "\f13c";
}
.sunshine--icon--albums:before {
  content: "\f13d";
}
.sunshine--icon--pause-button:before {
  content: "\f13e";
}
.sunshine--icon--full-screen:before {
  content: "\f13f";
}
.sunshine--icon--normal-screen:before {
  content: "\f140";
}
.sunshine--icon--zoom-out:before {
  content: "\f141";
}
.sunshine--icon--wedding:before {
  content: "\f142";
}
.sunshine--icon--customer:before {
  content: "\f143";
}
.sunshine--icon--conference:before {
  content: "\f144";
}
.sunshine--icon--tourist-guide:before {
  content: "\f145";
}
.sunshine--icon--portrait:before {
  content: "\f146";
}
.sunshine--icon--support:before {
  content: "\f147";
}
.sunshine--icon--chart:before {
  content: "\f148";
}
.sunshine--icon--cart:before {
  content: "\f149";
}
.sunshine--icon--cart-2:before {
  content: "\f14a";
}
.sunshine--icon--add-shopping-cart:before {
  content: "\f14b";
}
.sunshine--icon--add-shopping-cart-2:before {
  content: "\f14c";
}html { padding: 0; margin: 0; height: 100%; scroll-behavior: smooth; }
body { padding: 0; margin: 0; min-height: 100%; background: #FFF; }
#sunshine--header { background: #FFF; padding: 30px; box-sizing: border-box; display: flex; gap: 50px; justify-content: space-between; align-items: center; box-shadow: 0 0 15px rgba(0,0,0,.1); }

#sunshine--logo { font-weight: bold; font-size: clamp(24px, 4vw, 36px); }
#sunshine--logo img { max-width: 300px; }

#sunshine--header .sunshine--main-menu { margin: 0 0 0 auto; }
.sunshine--main-menu--toggle,
.sunshine--main-menu input { display: none; }
.sunshine--main-menu ul { display: flex; flex-direction: row; gap: 20px; padding: 0; margin: 0; }
.sunshine--main-menu li { display: inline-block !important; margin: 0 !important; padding: 0 !important; position: relative; }
.sunshine--main-menu a { text-decoration: none; color: #000; }
.sunshine--main-menu .sunshine--count { position: absolute; z-index: 100; top: -4px; right: -7px; display: inline-block; width: 18px; height: 18px; text-align: center; font-size: 11px; line-height: 18px; border-radius: 50%; background: #000; margin-left: 5px; }
.sunshine--main-menu .sunshine--selected a { font-weight: bold; }

.sunshine--main-menu li a { display: flex; gap: 10px; align-items: center; }
.sunshine--main-menu li a:before { font-family: "SunshineIcons"; font-size: 24px; }
.sunshine--main-menu li a span { display: none; }
.sunshine--main-menu li.sunshine--store a:before { content: "\f138"; }
.sunshine--main-menu li.sunshine--login a:before { content: "\f10a"; }
.sunshine--main-menu li.sunshine--account a:before { content: "\f10a"; }
.sunshine--main-menu li.sunshine--cart a:before { content: "\f103"; }
.sunshine--main-menu li.sunshine--favorites a:before { content: "\f101"; }
.sunshine--main-menu li.sunshine--gallery-return a:before { content: "\f109"; }
.sunshine--main-menu li.sunshine--gallery-return span { display: inline-block; }
.sunshine--main-menu li.sunshine--selected a { font-weight: normal; }
.sunshine--main-menu li.sunshine--checkout { display: none !important; }

.sunshine--main-menu li.sunshine--gallery-return,
.sunshine--main-menu li.sunshine--galleries { flex-grow: 10; }

body > .sunshine--main-menu { position: fixed; z-index: 99997; left: 0; bottom: 0; right: 0; margin: 0; padding: 20px 5%; box-shadow: 0 0 25px rgba(0,0,0,.2); border: none; }

#sunshine { padding: 50px 30px; box-sizing: border-box; }

#sunshine--cover { height: 100vh; position: relative; text-align: center; }
#sunshine--cover--image { position: absolute; z-index: 1; top: 0; left: 0; right: 0; bottom: 0; }
#sunshine--cover--image:before { content: ""; position: absolute; z-index: 5; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.4); }
#sunshine--cover--image img { object-fit: cover; object-position: center; display: block; width: 100%; height: 100%; }
#sunshine--cover--content { display: inline-block; position: relative; z-index: 10; top: 50%; transform: translateY(-50%); text-align: center; padding: clamp(75px, 20vh, 100px) 15%; margin: 0 5%; border: 2px solid rgba(255,255,255,.3); }
#sunshine--cover--content--title { font-size: clamp(32px, 6vw, 56px); line-height: 1.1; color: #FFF; font-weight: bold; margin: 0 0 50px 0; }

#sunshine--content,
#sunshine--content * { color: #000; }

#sunshine.sunshine--image { display: flex; flex-direction: column; margin: 50px 0; }
#sunshine--image--content { order: 10; }
#sunshine--image--nav { width: auto; margin: 0 auto; text-align: center; justify-content: center; gap: 20px; padding: 0 0 30px 0; }
#sunshine--image--nav > * { flex-grow: 0; }

#sunshine.sunshine--page--account,
#sunshine.sunshine--page--cart { max-width: 860px; margin: 50px auto; }
#sunshine.sunshine--page--checkout { max-width: 1060px; margin: 50px auto; }

#sunshine .sunshine--action-menu { border: 1px solid #EFEFEF; padding: 15px 25px; margin: 0 0 25px 0; }

@media screen and (max-width: 860px) {

	#sunshine--logo { max-width: 200px; }
	.sunshine--main-menu { margin: 30px 0 0 0; }
	.sunshine--main-menu ul { flex-direction: row; }
	.sunshine--main-menu li.sunshine--account,
	.sunshine--main-menu li.sunshine--login { flex-grow: 10; text-align: right; }

	#sunshine { padding: 75px 5%; }

}

@media screen and (max-width: 730px) {

	#sunshine--header .sunshine--main-menu { margin: 0; flex-grow: 0; }
	#sunshine--header .sunshine--main-menu nav { display: none; }
	#sunshine--header .sunshine--main-menu .sunshine--main-menu--open { display: block; color: #000; font-size: 20px; font-weight: bold; cursor: pointer; }
	#sunshine--header .sunshine--main-menu .sunshine--main-menu--close { display: none; color: #FFF; cursor: pointer; }
	#sunshine--header .sunshine--main-menu input[type="checkbox"]:checked ~ nav { display: block; position: fixed; z-index: 99998; top: 0; right: 0; bottom: 0; left: 0; background: #000; text-align: center; }
	#sunshine--header .sunshine--main-menu input[type="checkbox"]:checked ~ .sunshine--main-menu--open { display: none; }
	#sunshine--header .sunshine--main-menu input[type="checkbox"]:checked ~ .sunshine--main-menu--close { display: block !important; position: fixed; z-index: 99999; top: 15px; right: 15px; }
	#sunshine--header .sunshine--main-menu ul { flex-direction: column; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); text-align: center; }
	#sunshine--header .sunshine--main-menu li { display: flex !important; align-items: center; text-align: center !important; }
	#sunshine--header .sunshine--main-menu li a { color: #FFF; font-size: 26px; }
	#sunshine--header .sunshine--main-menu li a:before { display: none; }
	#sunshine--header .sunshine--main-menu li a span,
	#sunshine--header .sunshine--main-menu li button span { text-indent: 0; display: inline; }
	#sunshine--header .sunshine--main-menu .sunshine--count { position: static; background-color: #FFF; color: #000; }

}

@media screen and (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}