








/* 1.0.0 - 1.0.1 CSS */
..wpfh-search-button { text-align:left; margin-top:8px; }

/* Township dropdown in search form */
.search_column select {
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: .95em;
    height: 34px;
    background: #fff;
    cursor: pointer;
}
.wpfh_nag{ background-image:url(../images/logo.png); background-repeat:no-repeat; background-position:left;padding:10px 10px 10px 205px;;height:150px;font-size:1.3em;margin:10px; background-color:#FFF }
.wpfh_error_info{padding:5px;margin:3px; background-color:#f6edc5;color: #494B07;}
.wpfh_error{padding:5px;margin:3px; background-color:#ffd5d5;color:red;}
.wpfh_success{padding:5px;margin:3px; background-color: #E2FCD8;color:green;}
.wpfh-required{color:red;}
h1.topmenu-header{font-size:2.2em;margin:10px;padding-bottom:10px;padding-top:10px;background-color:#F3F3F3;l}
#topmenu{padding:5px;margin-top:5px;margin-bottom:5px; }
#topmenu .button{font-size:1.7em !important;}
#submenu{margin-top:15px; }
#submenu  .button{font-size:1.0em !important;}
#wpfh_message_icons{font-size:18px}
#wpfh_message_icons a{display:block;width:120px; background-color:#E9EFFE;border-radius:5px;float:left;margin-right:10px;margin-bottom:5px; text-align:center}
#wpfh_message_icons a:hover{ background-color: #C4E8FD}
#wpfh_message_icons a.selected{background-color: #C4E8FD}
.wpfh_message{ background-color: #F9F0BD;border:2px dashed #BB9626;padding:5px;margin:5px;color:#BB9626;font-weight:bold;font-size:1.4em;}
.wpfh_message_form_fields{font-size:14px;}
.wpfh_message_form_holder{min-height:180px;background-color:#FFF;border:1px solid #CCC;padding:10px;border-radius:5px; background-color:#F4F4F4}
.wpfh_modal{ border-radius:10px;}
.wpfh_modal a { text-decoration:none !important}

/* ── Single obituary page ────────────────────────────────────────────── */
#wpfh_main_obit_left  { float:left; width:48%; min-width:0; padding:1%; }
#wpfh_main_obit_right { float:left; width:48%; font-size:12px; min-width:0; padding:1%; border-radius:5px; margin-top:18px; }

/* Photo inside the left column — never overflow its column */
#wpfh_main_obit_left .wpfh_obit_image {
    width: 100%;                /* fill the column */
    max-width: 250px;           /* cap at a reasonable size on large screens */
}
/* Kill any inline width set by PHP */
#wpfh_main_obit_left .wpfh_obit_image[style] { width:100% !important; max-width:250px !important; }

#wpfh_main_obit_left .wpfh_obit_image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 4px;
}

.wpfh_main_obit_info h2 { margin:0; padding:0; font-size:1.8em; }
.wpfh_main_obit_info p  { margin:0; padding:0; font-weight:500; color:#000; }
.wpfh_main_obit_info    { border-radius:10px; padding:10px; margin-bottom:10px; }

.pagination{margin-top:10px;}
.pagination a{padding:1px;border:1px solid #CCC;margin:2px;}
#wpfh_search{ background-color:#EAEAEA;padding:10px;border-radius:5px;margin-top:10px;margin-bottom:10px;}
#wpfh_search .search_column{float:left;padding:10px;}
#wpfh_label{}

/* ── Obituary listing cards ──────────────────────────────────────────── */
.wpfh_obit p { margin:0; padding:0; }
.wpfh_obit { background-color:#FFF; border-radius:10px; padding:10px; margin:10px; }

/* Flex row: photo left, text right */
.wpfh_obit_inner { display:flex; flex-direction:row; gap:15px; align-items:flex-start; }

/* Photo column — responsive, never a fixed pixel size */
.wpfh_obit_image {
    flex-shrink: 0;
    width: clamp(60px, 20%, 150px);
}
/* Override any inline width= set by PHP so CSS wins */
.wpfh_obit_image[style] { width: clamp(60px, 20%, 150px) !important; }

.wpfh_obit_image img {
    display: block;
    width: 100%;        /* fill the flex column, not the viewport */
    height: auto;       /* maintain aspect ratio */
    border-radius: 4px;
    object-fit: cover;
}

/* Text column */
.wpfh_obit_obit { flex: 1; min-width: 0; }
.wpfh_obit_button { text-align:right; margin:10px; }

.wpfh_obit_title {font-size:1.7em;padding:0px;margin:0px; border-bottom:1px dashed #CCC;}
.wpfh_obit_date {padding:0px;margin:0px; font-style:italic;font-size:.9em;margin-bottom:15px;}
.wpfh_obit_vet { background-image:url(../images/vet-us.jpg) !important;color:#333}
.wpfh_obit_vet a {color:#333 !important;}
.wpfh_veteran{ background-image:url(../images/usa.png);height:32px; background-repeat:no-repeat; background-position:left;text-indent:35px;font-size:1.4em;font-weight:bold; }


.wpfh_obit_list{border-bottom:1px dotted #CCC;padding:2px;padding-top:10px;padding-bottom:10px;}
.wpfh_obit_list a {display:block;font-size:1.1em;text-decoration:none}
.wpfh_obit_list_name{float:left;}
.wpfh_obit_list_dates{float:left;padding:2px;font-size:.8em;}
.wpfh_obit_thumbnail_name{height:60px;}
.wpfh_obit_thumbnail{padding:10px;width:150px;margin:10px;border-radius:10px; text-align:center;float:left;}
.wpfh_obit_thumbnail a{ text-decoration:none;font-weight:bold;}
.wpfh_posting{padding:10px;margin-top:10px;background-color:#EFEFEF;}
.wpfh_posting p{padding:0px;margin:0px;margin-bottom:15px;}
.wpfh_posting .wpfh_posting_left{float:left;width:20%;padding:5px; font-size:.8em;}
.wpfh_posting .wpfh_posting_right{float:left;width:74%;padding:5px; background-color:#FFF;min-height:100px;box-shadow:1px 1px 5px #CCC;margin-left:10px;}


/* tool tip */

.wpfh_button,
a.wpfh_button,
input.wpfh_button,
input[type="submit"].wpfh_button,
button.wpfh_button {
	-webkit-appearance: none;
	appearance: none;
	background: #111111;
	background: linear-gradient(to bottom, #333333 0%, #000000 100%);
	-webkit-box-shadow: inset 0px 1px 0px 0px rgba(255,255,255,0.15);
	box-shadow: inset 0px 1px 0px 0px rgba(255,255,255,0.15);
	color: #ffffff !important;
	border: 1px solid #000000;
	border-radius: 4px;
	display: inline-block;
	font-size: 13px;
	font-weight: bold;
	padding: 7px 18px;
	text-decoration: none;
	cursor: pointer;
	line-height: normal;
	transition: background 0.2s ease;
}
.wpfh_button:hover,
a.wpfh_button:hover,
input.wpfh_button:hover,
input[type="submit"].wpfh_button:hover,
button.wpfh_button:hover {
	background: #333333;
	background: linear-gradient(to bottom, #555555 0%, #222222 100%);
	color: #ffffff !important;
}
.wpfh_button:active {
	position: relative;
	top: 1px;
}

/* Front-end "View More" and widget buttons that use WP's class="button" */
#wpfh_search .button,
#wpfh_main_obit .button,
.wpfh_obit .button,
.wpfh_obit_list .button,
.wpfh_obit_thumbnail .button,
.wpfh-recent-obits-list .button,
.wpfh-recent-obits-footer .button {
	background: #111111 !important;
	background: linear-gradient(to bottom, #333333 0%, #000000 100%) !important;
	color: #ffffff !important;
	border: 1px solid #000000 !important;
	border-radius: 4px !important;
}

.ui-tooltip, .arrow:after {
        background: black;
        border: 2px solid white;
    }
    .ui-tooltip {
        padding: 10px 20px;
        color: white;
        border-radius: 20px;
        font: bold 14px "Helvetica Neue", Sans-Serif;
        text-transform: uppercase;
        box-shadow: 0 0 7px black;
    }
    .arrow {
        width: 70px;
        height: 16px;
        overflow: hidden;
        position: absolute;
        left: 50%;
        margin-left: -35px;
        bottom: -16px;
    }
    .arrow.top {
        top: -16px;
        bottom: auto;
    }
    .arrow.left {
        left: 20%;
    }
    .arrow:after {
        content: "";
        position: absolute;
        left: 20px;
        top: -20px;
        width: 25px;
        height: 25px;
        box-shadow: 6px 5px 9px -9px black;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        tranform: rotate(45deg);
    }
    .arrow.top:after {
        bottom: -20px;
        top: auto;
    }
	
/* 1.0.3 css **/

#wpfh_search_widget{margin-top:20px; }
#wpfh_search_widget input{width:96%;margin:1%;border:1px solid #CCC;padding:1%}



#wpfh_search_widget label{clear:both;float:left;width:130px;margin-bottom:10px;}


#wpfh_guest_info label{width:100px;display:block;float:left;font-weight:bold;}

 .wpfh_form p{min-width:320px;}
.wpfh_form label{clear:both;float:none;width:100%;margin-bottom:10px;margin-top:10px;border-bottom:1px solid #CCC}
.wpfh_form span{padding:0px;float:none;width:100%;margin-bottom:10px;margin-top:10px;}
.wpfh_form textarea{width:80%;}
/* 1.2.7 **/

#wpfh-obit-subnav{margin-top:10px;margin-bottom:10px; }
#wpfh-obit-subnav a{  background-position:10% 50%; background-repeat:no-repeat;width:100px;display:block;float:right; text-align:center;margin-left:10px; background-color: #EFEFEF;border-radius:5px;padding:3px 0px 3px 0px;margin-top:5px; text-decoration:none;font-weight:bold;font-size:12px;width:110px;}

#wpfh-obit-subnav a.wpfh-printer{background-image:url(../images/printer.png) !important;}
#wpfh-obit-subnav a.wpfh-fb{background-image:url(../images/facebook.png) !important;}
.wpfh_gallery_container img{margin:2px;}

.wpfh_gallery_filter{text-align:right;background-color:#EFEFEF;padding:5px;margin:5px;}
.wpfh_gallery_filter a { 
    margin-right: 10px; 
    color:#666;
    text-decoration:none;
	padding:2px;
}
 
.wpfh_gallery_filter a.current { 
    font-weight:bold; background-color:#333;color:#fff
}
 

 
.isotope-item {
    z-index: 2;
}
.isotope-hidden.isotope-item {
    pointer-events: none;
    z-index: 1;
}
.isotope,
.isotope .isotope-item {
  /* change duration value to whatever you like */
 
    -webkit-transition-duration: 0.8s;
    -moz-transition-duration: 0.8s;
    transition-duration: 0.8s;
}
.isotope {
    -webkit-transition-property: height, width;
    -moz-transition-property: height, width;
    transition-property: height, width;
}
.isotope .isotope-item {
    -webkit-transition-property: -webkit-transform, opacity;
    -moz-transition-property: -moz-transform, opacity;
    transition-property: transform, opacity;
}
@media print 
{
    .noPrint 
    {
        display:none;
    }
}
/* 1.3.5 */

#wp-admin-bar-manage-guestbook a { background-color:#5E1111;color:#FFF}

/* 1.5.5 */

#searchcrumbs{ font-size:1.2em;padding:10px;}

.obit_left_column{width:48%;float:left;min-width:320px;}
.obit_right_column{width:48%;float:left;min-width:320px;}


.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;

}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.wpfh-form p, .wpfh-form h2, .wpfh-form h3, .wpfh-form h1{clear:both;padding:10px;}
.wpfh-form label{width:30%;float:left;}
.wpfh-form span{width:70%;float:left;}



.wpfp_password_protect{padding:10px;margin:10px auto; background-color:#EFEFEF;border-radius:10px; text-align:center}
.wpfp_password_protect strong{font-size:1.3em;  }

.funeralpress-two-column p {clear:both; text-align:left}
.funeralpress-two-column .l-column{float:left;width:50%;}
.funeralpress-two-column .r-column{float:left;width:50%}


.sp_cu_manage{}


form.funeralpress_form p {clear:both; text-align:left}
form.funeralpress_form p.two_column {float:left;width:50%;clear:none}

form.funeralpress_form p label{display:block;}
form.funeralpress_form p.two_column label {float:none;display:block;width:100%;}


.wpfh-view-counter{text-align:right;font-weight:bold;color:#333}

@media (max-width: 720px) {


	
.funeralpress-two-column p {clear:both; text-align:left}
.funeralpress-two-column .l-column{float:none;width:100%; text-align:center}
.funeralpress-two-column .r-column{float:none;width:100%;}
	
	
form.funeralpress_form p {clear:both; text-align:left}
form.funeralpress_form p label{float:none;width:100%;display:block;}
form.funeralpress_form p.two_column {float:none;width:100%;clear:both;}


	

 /* Listing card — stack vertically on mobile */
 .wpfh_obit { text-align:center; }
 .wpfh_obit_inner { flex-direction:column; align-items:center; }
 .wpfh_obit_image {
     width: clamp(80px, 50%, 180px) !important; /* centred, reasonable size */
     margin: 0 auto;
 }
 .wpfh_obit_obit { width:100%; text-align:left; }
 .wpfh_obit_button { text-align:center; }
 .wpfh_obit_date { text-align:center; }

 /* Single-obit page — stack columns on mobile */
 #wpfh-obit-subnav a { width:45%; float:left; }
 #wpfh_main_obit_left  { float:none; width:100%; }
 #wpfh_main_obit_right { float:none; width:100%; }
 #wpfh_main_obit_left .wpfh_obit_image,
 #wpfh_main_obit_left .wpfh_obit_image[style] {
     max-width: 200px !important;
     margin: 0 auto;
 }
 #wpfh_main_obit h2 { text-align:center; }
 .wpfh_main_obit_info { text-align:center; }

.breadcrumb-list{display:none;}
.wpfh_posting .wpfh_posting_left{float:none;width:100%;}
.wpfh_posting .wpfh_posting_right{float:none;width:98%; margin:0px auto;}
.wpfh_posting .wpfh_posting_right img{width:100%;}
.wpfh_posting .wpfh_posting_right object{width:100% !important}
}
/* ── Recent Obituaries Widget & Shortcode ────────────────────────── */

/* Township filter dropdown */
.wpfh-township-filter { margin-bottom:10px; }
.wpfh-township-select {
    width: 100%;
    padding: 5px 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: .9em;
    cursor: pointer;
}

/* Township label under each obit name in the widget/shortcode */
.wpfh-recent-obit-township {
    display: block;
    font-size: .78em;
    color: #888;
    font-style: italic;
    margin-top: 1px;
}

/* "View All" link */
.wpfh-view-all {
    display: inline-block;
    margin-top: 8px;
    font-size: .85em;
    text-decoration: none;
    color: #0073aa;
}
.wpfh-view-all:hover { text-decoration: underline; }

.wpfh-recent-none { color: #999; font-style: italic; font-size: .9em; }
.wpfh-recent-obits-list  { list-style:none; margin:0; padding:0; }

.wpfh-recent-obit-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid #eee;
}
.wpfh-recent-obit-item:last-child { border-bottom: none; }

/* Photo — fixed small square, never overflows */
.wpfh-recent-obit-photo { flex-shrink: 0; }
.wpfh-recent-obit-photo img {
    display: block;
    width: clamp(50px, 15vw, 70px);
    height: clamp(50px, 15vw, 70px);
    object-fit: cover;
    border-radius: 4px;
}

.wpfh-recent-obit-info   { flex: 1; min-width: 0; }
.wpfh-recent-obit-name   { display:block; font-weight:bold; font-size:.95em; line-height:1.3; text-decoration:none; }
.wpfh-recent-obit-name:hover { text-decoration:underline; }
.wpfh-recent-obit-date   { display:block; font-size:.82em; color:#777; margin-top:2px; }
.wpfh-recent-obit-excerpt { display:block; font-size:.82em; color:#555; margin-top:4px; line-height:1.4; }

.wpfh-recent-obits-footer { margin-top:12px; text-align:center; }

/* Shortcode heading */
.wpfh-recent-obits-title { margin:0 0 10px; font-size:1.2em; border-bottom:2px solid #ddd; padding-bottom:5px; }

/* ── Subscription form ───────────────────────────────────────────────── */
.wpfh-subscribe-shortcode {
    margin: 20px 0;
    padding: 15px 20px;
    background: #f9f9f9;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
}
.wpfh-subscribe-shortcode-title {
    font-weight: bold;
    font-size: 1.05em;
    margin-bottom: 10px;
}
.wpfh-subscribe-shortcode-form input[type="text"],
.wpfh-subscribe-shortcode-form input[type="email"] {
    padding: 7px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: .95em;
    margin-right: 6px;
    width: clamp(180px, 50%, 300px);
}
.wpfh-subscribe-shortcode-form input[type="submit"] {
    padding: 7px 18px;
    border-radius: 4px;
    cursor: pointer;
}
.wpfh_subscribe_message {
    margin-bottom: 8px;
    font-size: .9em;
}
