﻿/* Global CSS */
body 
{
    background: #003266 url('../images/body_bg.jpg') repeat-y;    
    background-position: center;
    color: #515151;
    font-family: Arial; 
    font-size: 12px;
    margin: 0;      
}

#header_bg 
{
    background-image: url('../images/header_bg.jpg');
    background-repeat: no-repeat;    
    position: absolute;
    top: 0;
    height: 400px;    
    z-index: -1;
    position: absolute;
    width: 1242px;
    left: 50%;
    margin-left: -621px; /* Negative half of width. */        
}

p.double_spaced { line-height: 200%; }

#site_header { position: relative; height: 125px; }
#logo 
{
    background-image: url('../images/pfg_logo.png');
    background-repeat: no-repeat;
    height: 69px;
    position: absolute; 
    width: 300px;
    bottom: 16px;
    left: 0;
    z-index: 1001;
}

#tagline 
{
    border: 1px solid #515151;
    bottom: 20px;
    height: 75px;
    position: absolute;
    right: 20px;
    width: 200px;   
}

a > img { border: 0; }
.inset_left { float: left; margin: 0 10px 10px 0; }
.inset_right { float: right; margin: 0 0 10px 10px; }

#content_wrapper {  width: 960px; margin-left: auto; margin-right: auto; }

.page_header { height: 200px; background-repeat: no-repeat; }

.page_title { border-bottom: 1px solid #003266; margin: 0 20px 20px 20px; width: 556px; }

#page_content  
{
    background-color: #dedede;
    min-height: 500px;    
}

.blue_bg { background: #e6e9eb url('../images/page_blue_bg.jpg') repeat-x; }

.page_separator { border-bottom: 1px dotted #515151; height: 1px; margin: 20px; }

#site_map  
{
    background-image: url('../images/sitemap_bg.jpg');
    background-repeat: no-repeat;
    height: 241px; 
    padding: 0 199px;
}

#site_map > div 
{
    float: left;
    margin: 10px 27px;
}

#site_map > div h3 
{
    color: #7eafdd;   
    font-weight: bold; 
    font-size: 11px;
    text-transform: uppercase;
}

#site_map ul { list-style-type: none; padding: 0; margin: 0; }
#site_map li { margin: 0; padding: 0; }

#site_map > div a 
{    
    color: #FFFFFF;    
    text-decoration: none;
}

#site_map > div a:hover { text-decoration: underline; }

/* Menu CSS */
#site_menu  
{
    background-color: #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
    color: #8f2128; 
    float: left; 
    font-family: Times New Roman; 
    font-size: 14px;     
    height: 41px;
    position: relative;
    width: 810px;    
    z-index: 1000;
}

#site_menu a, #site_menu span { color: #8f2128; text-decoration: none; display: block; padding-top: 12px; text-align: center; height: 29px; }
#site_menu ul { list-style-type: none; margin: 0px; padding: 0px; }
#site_menu li { cursor: pointer; display: block; position: relative; white-space: nowrap; }
#site_menu li.right { float: right; }
#site_menu > ul > li { float: left; }
#site_menu > ul li:hover, #site_menu > ul li.selected
{ background: #8f2128 url('../images/menuitem_bg.jpg') no-repeat; color: #FFFFFF; }

#site_menu > ul li:hover .menuitem_subbg,
#site_menu > ul li.selected .menuitem_subbg
{ display: block; }

#site_menu > ul > li:hover > a, #site_menu > ul > li:hover > span,
#site_menu li.selected > a, #site_menu li.selected > span,
#site_menu > ul > li li:hover a,
#site_menu > ul > li li:hover span
{ color: #FFFFFF; }

#site_menu li:hover > ul { display: block; }
#site_menu > ul > li > ul { position: absolute; left: -1px; top: 100%; }
#site_menu > ul ul  
{
    background-color: #DCDCDC; 
    border-bottom: 1px solid #515151;     
    border-left: 1px solid #515151; 
    border-right: 1px solid #515151;
    border-top: 1px solid #FFFFFF;
    display: none; 
    min-width: 175px; 
}

#site_menu > ul ul a, 
#site_menu > ul ul span
{ color: #515151; text-align: left; padding-left: 10px; }

#site_menu .home { width: 85px; }
#site_menu .our_mission { width: 135px; }
#site_menu .shop { width: 75px; }
#site_menu .oiam { width: 195px; }
#site_menu .about_us { width: 105px; }
#site_menu .news { width: 105px; }
#site_menu .contact_us { width: 110px; }

.menuitem_subbg 
{
    background-image: url('../images/menuitem_subbg.png');
    background-repeat: no-repeat;
    display: none;
    width: 11px;
    height: 7px;
    position: absolute;
    bottom: -7px;    
    left: 50%;
    margin-left: -5px;
}

#site_menu li.selected ul { display: none; }

#shopping_cart_summary  
{
    background: #DCDCDC url('../images/cart_summary_bg.jpg') no-repeat;    
    float: right; 
    height: 42px;
    width: 150px;  
}

#shopping_cart_summary a
{
    color: #515151;    
    display: block;
    font-weight: bold;
    height: 42px;
    position: relative;
    text-decoration: none;    
    width: 150px;
}

#shopping_cart_summary a span 
{
    display: block;
    left: 53px;
    position: absolute;
    text-align: center;
    top: 7px;
    width: 70px;  
}

/* Home CSS */
#featured_slideshow .slides { height: 267px; }
#featured_slideshow .footer  
{
    background-image: url('../images/slideshow_footer_bg.jpg');
    background-repeat: repeat-x;
    color: #003266;
    font-family: Times New Roman;
    font-size: 13px;
    font-weight: bold;
    height: 53px;
}

#featured_slideshow .footer > div  
{
    margin-top: 15px;
    text-align: center;
    width: 100%;    
}

#featured_slideshow .footer > div a 
{
    color: #8D181A;
    text-decoration: none;
}


#featured_slideshow .pager  
{
    background-image: url('../images/slideshow_pager_bg.jpg');
    background-repeat: repeat-x;
    height: 64px; 
    position: relative;    
    z-index: 500;
}

#featured_slideshow .pager a 
{
    color: #BCBCBC;
    display: block;
    float: left;
    font-size: 12px;
    font-family: Times New Roman;
    height: 50px;    
    width: 192px;
    padding-top: 14px;
    text-align: center;
    text-decoration: none;    
}

#featured_slideshow .pager a.activeSlide
{
    color: #FFFFFF;
    background-image: url('../images/pager_selected_bg.png');
    background-repeat: no-repeat;
    height: 50px;
    margin-top: -16px;
    padding-top: 30px;
}

#featured_slideshow, #featured_video { float: left; height: 384px; }
#featured_slideshow { width: 576px; }
#featured_video  
{
	color: #fff;
    background-color: #000;
    display: block;
    width: 384px;
    height: 384px;
    position: relative;
}
#featured_video_links { margin-top: 14px; color: #fff; font-family: Times New Roman; font-size: 11px; text-align: center; }
#featured_video_links a { color: #fff; text-decoration: none; }
#featured_video_links a:hover { color: #C68177; text-decoration: none; }
#featured_video_btn a { width: 384px; height: 64px; background: url('../images/shopnow_button.jpg') no-repeat; background-position: top; position: absolute; bottom: 0px; left: 0px; }
#featured_video_btn a:hover { background-position: bottom; }

#shop_now_button 
{
    background-image: url('../images/shopnow_button.jpg');
    background-repeat: no-repeat;
    display: block;
    float: right;
    height: 64px;
    width: 384px;
}

.featured_panel 
{
    float: left; 
    margin: 0px 0 20px 20px;
    width: 265px;
}

.featured_panel .header 
{
    border-bottom: 1px solid #515151;
    color: #A42830;
    font-family: Times New Roman;
    font-size: 14px;
    font-weight: lighter;
    padding-bottom: 5px; 
}

.view_more_link 
{
    color: #8f2128;        
    font-size: 12px;
    font-style: italic;   
    font-family: Times New Roman;    
    text-decoration: none; 
}

.featured_panel .read_more_link 
{    
    border-top: 1px solid #BCBCBC;
    color: #8f2128;
    display: block;
    float: left;    
    font-size: 14px;
    font-style: italic;   
    font-family: Times New Roman;
    padding: 3px 0;
    text-decoration: none; 
}

#product_testimonials  
{
    background-image: url('../images/testimonial_bg.jpg');
    background-repeat: no-repeat;
    float: right; 
    height: 300px;
    margin: 0 20px 20px 20px;
    overflow: hidden;
    padding: 30px;
    width: 268px;
}

#product_testimonials h2 { margin-top: 0px; }
.product_testimonial_panel .testimonial_body 
{
    font-size: 12px;    
    height: 185px;
    margin: 0;
    overflow: hidden;
}

.product_testimonial_panel .testimonial_name 
{
    font-size: 12px;
    font-style: italic;
    font-weight: bold;
}

#social_media_links  { float: right; margin: 0 20px 20px 20px; width: 328px; } 
.social_media_link { background-color: #cdd2d8; height: 24px; margin: 3px 0; }

.testimonial_panels { height: 200px; overflow: hidden; }

/* Our Mission CSS */

#our_mission_header { background-image: url('../images/our_mission_header.jpg'); }
#about_us_header { background-image: url('../images/about_us_header.jpg'); }
#contact_us_header { background-image: url('../images/contact_us_header.jpg'); }
#news_header { background-image: url('../images/news_header.jpg'); }
#stories_of_hope_header { background-image: url('../images/stories_of_hope_header.jpg'); }

#secondary_layout td { padding: 20px; }
#secondary_layout td.left { width: 540px; background-color: #cdd2d8; }
#secondary_layout table td { padding: 0px;}

#secondary_layout a 
{
    color: #991118;
    font-weight: bold;
    text-decoration: none;
}

#charities td { padding: 0 5px 20px 0; }
#charities .logo { width: 109px; text-align: center; }
#charities .name  
{
    color: #991118;
    font-size: 12px; 
    font-weight: bold; 
}

.testimonial_panel {    
    background-color: #b0b4ba;
    margin: 10px 0;
    position: relative;
    padding: 0 10px 10px 10px;
}

.testimonial_panel .testimonial_header { position: relative; }

.testimonial_header .title 
{
    bottom: 10px;
    color: #003266;    
    display: block;
    font-family: Times New Roman;
    font-size: 16px;    
    left: 10px;
    position: absolute;
}

.testimonial_header .image { float: right; }

.testimonial_panel .content 
{
    background-color: #dfe1e5;
    padding: 10px;
    font-size: 12px;
}

.testimonial_panel .read_more 
{
    background-image: url('../images/read_more_button.png');
    background-repeat: no-repeat;
    display: block;
    height: 24px;
    width: 105px;    
}

.share_links 
{
    position: absolute;
    bottom: 0;
    right: 10px;
}

.share_links a
{
    display: block; 
    float: left;
    background-color: #b0b4ba;
    padding: 5px;
    margin-left: 1px;
}

.panel { margin-top: 20px; padding: 10px; }
.panel h2.panel_title { margin: 0 0 10px 0; }
.panel .featured_product_template { padding: 0; }

.blue.panel 
{
    background-color: #c3cfdb;
    border: 10px solid #45688c;
}
 
.gray.panel
{
    background-color: #dfe1e5;
    border: 10px solid #bfbfbf;    
}

/* Default Product Template CSS */
h1, h2, 
.product_template_panel h2 a
{ 
    color: #003266; 
    font-family: Times New Roman; 
    font-weight: lighter; 
    text-decoration: none;
}

h2 { font-size: 20px; }
h1, .product_template_panel h2,
.product_template_panel h2 a
{ font-size: 22px; }

.shop_phone_number  
{
	background-color: #003266;
	padding: 10px;
	text-align: center;	
}

.shop_phone_number h2 
{
	color: #FFFFFF;
	margin: 0;
	padding: 0;
}

#product_catalog h1.category_title { display: block; float: left; }
#product_catalog h1.category_name { color: #b2141d; display: block; float: right; }

.product_template_panel .product_image 
{
    background-color: #FFFFFF;
    border: 1px solid #BCBCBC;  
    padding: 20px;
    text-align: center;
    position: relative;
}

.product_template_panel .product_info { padding: 10px; 
}

.product_template_panel .product_buttons 
{
    border: 1px solid #515151;
    float: left;  
    padding: 15px;
    width: 295px;
}

.product_template_panel .product_buttons a 
{
    display: block; 
    float: left;
    padding: 5px;
}
.product_template_panel .product_comments { float: left; width: 335px; }

/* Velvet Box CSS */
.product_info.left { float: left; width: 400px; }

.vb_1coin_39 .preview_wrapper,
.vb_1coin_44 .preview_wrapper,
.vb_2coin_39 .preview_wrapper,
.vb_2coin_44 .preview_wrapper
{ margin-left: auto; margin-right: auto; width: 312px; position: relative; }

.coin_selectors { float: right; margin-top: 25px; margin-bottom: 10px; width: 325px; }
.coin_selectors h2 { margin: 0 0 10px 0; }

.product_special_offer  
{
    border: 1px solid #BCBCBC;
    font-weight: Bold;
    font-size: 13px;
    margin: 0 5px 5px 0;
    padding: 15px 20px;
    text-decoration: none;
    width: 283px;
    display: block;
    color: #003266;
    background-color: #ffffff;
}

.product_special_offer:hover
{
	color: #11548F;
}

.left_coin_preview 
{
    position: absolute;
    height: 65px;
    width: 75px;
    z-index: 500;
}

.right_coin_preview 
{
    position: absolute;
    height: 65px;
    width: 90px;
    z-index: 500;
}

/* Velvet Box 1 Coin 39 CSS */
.vb_1coin_39 .product_image .left_coin_preview 
{
    left: 55px;
    bottom: 40px;    
}

/* Velvet Box 1 Coin 44 CSS */
.vb_1coin_44 .product_image .right_coin_preview
{
    right: 40px;
    bottom: 45px;
}

/* Velvet Box 2 Coin 39 CSS */
.vb_2coin_39 .product_image .left_coin_preview 
{
    left: 46px;
    bottom: 40px;
}

.vb_2coin_39 .product_image .right_coin_preview 
{
    right: 27px;
    bottom: 47px;
}

/* Velvet Box 2 Coin 44 CSS */
.vb_2coin_44 .product_image .left_coin_preview 
{
    left: 32px;
    bottom: 40px;
    width: 90px;
}

.vb_2coin_44 .product_image .right_coin_preview
{
    right: 27px;
    bottom: 40px;
}

/* Build Your Own Shadowbox Template */
.byo_shadowbox_template .preview_wrapper {
    position: relative;
}

.byo_shadowbox_template:hover .SbCallout {
    border: 1px solid #939393;
}

.byo_shadowbox_template .left_coin_preview, 
.byo_shadowbox_template .right_coin_preview
{ width: 50px; height: 50px; }

.byo_shadowbox_template .left_coin_preview { top: 147px; left: 240px; }
.byo_shadowbox_template .right_coin_preview { top: 147px; right: 240px; }

.SbCallout { 
    height: 80px;
    position:absolute;
    width: 80px;       
    background-repeat: repeat;
    cursor: pointer;
    z-index: 500;
}

#SbCallout01 {
    top: 70px;
    left: 75px;
    width: 100px;
    height: 200px;
}

#SbCallout02 {
    left: 210px;
    top: 35px;
}

#SbCallout03 {
    left: 325px;
    top: 35px;
}

#SbCallout04 {
    right: 210px; 
    top: 35px;
}

#SbCallout05 {
    top: 68px;
    right: 75px;
    width: 100px;
    height: 200px;
}

#SbCallout06 {
    left: 325px; 
    bottom: 35px;
}

#SbCallout07 {
    left: 210px; 
    bottom: 35px;
}

#SbCallout08 {
    left: 434px; 
    bottom: 35px; 
}

/* Featured Product Template  and Related Product Template CSS */
.related_product_template { padding: 5px; }

.featured_product_template h2,
.related_product_template h2 a
{
    color: #8c1117;    
    font-family: Times New Roman;
    font-weight: lighter;
    text-decoration: none;
}

.featured_product_template h2 { font-size: 16px; }
.related_product_template h2 { font-size: 14px; }

.featured_product_template .product_image,
.related_product_template .product_image 
{
    background-color: #FFFFFF;
    border: 1px solid #BCBCBC;    
    text-align: center;    
}

.featured_product_template .product_image {
    min-height: 209px;
    padding: 10px;
}

.related_product_template { width: 180px; }
.related_product_template .product_image { padding: 5px; }

/* HTML Tables are currently the only cross-browser way I know how to vertically align content in a variable sized div */
.related_product_template .product_image tr { height: 90px; } 

.featured_product_template .product_template_buttons .item_price,
.related_product_template .product_template_buttons .item_price { font-size: 14px; }

.featured_product_template .product_template_buttons .email_share { padding-top: 7px; }

/* Shop CSS */

#product_catalog_layout { width: 100%; }

#product_catalog_layout td.right
{
    background-color: #D0C4C8;
    background-image: url('../images/shopping_cart_bg.jpg');
    background-repeat: no-repeat;
    background-position: top;
    padding: 15px;
    width: 120px;
}

.shop_category_link 
{
    background-image: url('../images/shop_category_link_bg.png');
    background-position: bottom center;
    background-repeat: no-repeat;
    color: #FFFFFF;
    display: block;    
    font-family: Times New Roman;
    font-size: 14px;
    font-weight: bold;
    height: 21px;
    padding-left: 18px;
    padding-top: 4px;
    text-decoration: none;    
}

.shop_category_link:hover,
.shop_category_link.selected
{
    background-position: top center; 
    color: #44698f;
}

#catalog_categories > div  
{
    float: left;
    height: 150px;    
    padding-top: 25px;
    width: 200px;
}

#oiam_category {  padding: 0 !important; }
#oiam_category a 
{
    background: #951118 url('../images/oiam_button.jpg') no-repeat;
    background-position: top left;
    display: block;
    height: 175px;
    width: 210px;
}

#oiam_category a:hover,
#oiam_category a.selected { background-position: bottom left; }

#product_catalog { padding: 20px; }

.content_panel { padding: 20px; }

.product_detail_panel 
{
    border-top: 1px dotted #515151;
    float: left;
    width: 340px;
    padding: 15px;
    min-height: 300px;
    margin-top: 20px;
    position: relative;
}

#related_products
{
    width: 360px;
}

#signature { width: 234px; position: absolute; top: 1230px; right: 530px; text-align: center; font-weight: bold; font-size: 14px; color: #000; }

#product_comments { border-right: 1px dotted #BCBCBC; }

.product_template_buttons { border-top: 1px solid #BCBCBC;}
.product_template_buttons > div { float: left; padding: 5px; border-left: 1px solid #BCBCBC; min-height: 18px; }
.product_template_buttons > div.right { float: right; }
.product_template_buttons .item_price { font-family: Times New Roman; font-size: 18px; font-style: italic; border-left: 0; }
.product_template_buttons .email_share { padding-top: 10px; height: 14px; cursor: pointer; }

.shopping_cart_row  
{
    border-bottom: 1px dotted #515151; 
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.shopping_cart_row .item_name 
{
    margin-top: 0px;
    font-weight: bold;
    text-align: left;
}

.shopping_cart_row .item_quantity 
{
    border: 1px solid #7F272D;
    width: 25px;
    text-align: center;
}

.shopping_cart_row .delete_icon 
{
    display: block;
    float: right;
    margin-top: 1px;
}

#checkout { padding: 20px; }
#checkout h2 { margin-top: 0; }

#checkout_cart { float: left; width: 700px; margin-right: 10px; }
#checkout_summary { float: right; width: 210px; }

.grid_header { background-color: #515151; color: #FFFFFF; }
.grid_item { background-color: #FFFFFF; }

.field_label 
{
    font-weight: bold; 
    text-align: right;
}

.field_input { border: 1px solid #BCBCBC; }

#checkout a 
{
    color: #0053A5;
    font-weight: bold;
    text-decoration: none;
}

#checkout a:hover { text-decoration: underline; }

#order_confirmation_panel  
{
    background-color: #FFFFFF;    
    border: 1px solid #BCBCBC;
    padding: 10px;
    width: 190px;
}

.checkout_no_items { font-size: 16px; min-height: 350px; }
.order_complete_panel { font-size: 16px; }

.qa_panel  
{
    border-bottom: 1px dotted #515151;
    font-size: 12px;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.qa_label 
{
    font-family: Times New Roman;
    font-weight: bold;
}

.news_panel h3 
{
    color: #991118;
    font-family: Times New Roman;
    font-size: 18px;
    font-weight: lighter;
    margin-bottom: 0;
}

.news_panel .news_date
{
    font-weight: bold;
    font-family: Times New Roman;
    font-size: 14px;
}

.news_panel a 
{
    font-style: italic;
    font-weight: lighter;
}


#email_share_dialog input[type=text], #email_share_dialog textarea { width: 300px; }

.testimonial_email_share,
.testimonial_fb_share
{ float: left; border-top: 1px solid #515151; width: 45%; padding: 6px; }

.testimonial_email_share { text-align: right; padding: 9px 6px; }
.testimonial_fb_share { border-left: 1px solid #515151; }

.testimonial_email_share img { cursor:pointer; }

.story_name { font-size: 16px; font-weight: bold; }
.story_image { float: left; margin: 20px 15px 0 0; }
.story_body { font-size: 14px; line-height: 1.5; }

.oiam_description { float: left; width: 390px; padding: 10px; }
.oiam_personalization { float: left; width: 340px; padding: 10px; }
.oiam_amount { float: right; text-align: right; margin-bottom: 5px;}
td.site_map a { display: block; margin-bottom: 10px; }
#site_map_left, site_map_right { float: left; width: 200px; }