@import url(https://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,700italic,400,300,600,700);
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}
body {
    line-height: 1;
}
ol,
ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
table.contact-table {
    width: 100%;   
}
.contact-table td {
    padding: 15px;                              
    vertical-align: top;          
}


body {
    background: #ddd url(../icons/bg.png);
    font:
        14px/1.8 Helvetica,
        Arial,
        sans-serif;
    color: #2e2e2e;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
}
body a {
    color: #e73420;
}
body a:hover {
    text-decoration: none;
    color: #e73420;
}
img {
    max-width: 100%;
    height: auto;
}
#wrap {
    width: 960px;
    margin: 0 auto 60px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#main-content {
    margin: 30px 0;
}
.container {
    background: #eee;
    padding: 30px;
    border-radius: 12px 12px 0px 0px;
}

/* KEEP THESE IN CASE YOU USE SIDEBARS LATER */
/*#content {
    float: right;
    width: 590px;
}*/
body/*.no-sidebars*/ #content {
    width: 100%;
}
/*#sidebar {
    float: left;
    width: 250px;
    font-size: 0.929em;
}
*/
.remove-margin {
    margin-right: 0 !important;
}

.element-invisible {
    position: absolute !important;
    clip-path: inset(50%);
    overflow: hidden;
    height: 1px;
}
.element-invisible.element-focusable:active,
.element-invisible.element-focusable:focus {
    position: static !important;
    clip-path: none;
    overflow: visible;
    height: auto;
}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
* html .clearfix {
    height: 1%;
}
*:first-child + html .clearfix {
    min-height: 1%;
}
.breadcrumb {
    padding-bottom: 0.5em;
}
.clear {
    clear: both;
}
/*blockquote {
    position: relative;
    margin: 30px 20px;
    padding-left: 25px;
    font-style: italic;
    font-weight: bold;
    color: #000;
    quotes: "\201C" "\201D" "\2018" "\2019";
}
blockquote:before {
    color: #000;
    content: open-quote;
    font-size: 3em;
    line-height: 0.1em;
    position: absolute;
    top: 20px;
    left: -10px;
}
blockquote p:last-child {
    margin: 0;
}
*/
pre {
    background: #fff url(../icons/pre-bg.png) repeat;
    margin: 40px 0px;
    padding: 25px 20px;
    line-height: 25px;
    border: 1px solid #ddd;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    overflow-wrap: break-word
}
ul,
ol {
    margin: 0 0 1em 1.5em;
}
ul {
    list-style: disc;
}
ol {
    list-style-type: decimal;
}
ol ol {
    list-style: upper-alpha;
}
ol ol ol {
    list-style: lower-roman;
}
ol ol ol ol {
    list-style: lower-alpha;
}
ul ul,
ol ol,
ul ol,
ol ul {
    margin-bottom: 0;
}
table {
    margin: 0 0 1.5em;
    width: 100%;
    border: 1px solid #ddd;
    border-right: none;
    background: #fff;
}
th {
    font-weight: bold;
    padding: 10px 10px;
    background: #555;
    color: #fff;
}
tr {
    padding: 5px 5px;
}
td {
    padding: 5px 10px;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    font-family: "Open Sans", Helvetica, Arial, Helvetica, sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    color: #000;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #000;
}
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: #e73420;
    text-decoration: none;
}
h1 {
    font-size: 1.714em;
    margin: 0 0 20px;
}
h2 {
    font-size: 1.286em;
}
h3 {
    font-size: 1.286em;
}
h4 {
    font-size: 1em;
}
h5 {
    font-size: 0.857em;
}
h6 {
    font-size: 0.714em;
}
#main-content {
    font-size: 1em;
}
p {
    margin: 0 0 20px;
}
p img {
    margin: 0;
}
em {
    font-style: italic;
}
strong {
    font-weight: bold;
}
small {
    font-size: 80%;
}
hr {
    border: solid rgba(0, 0, 0, 0.2);
    border-width: 1px 0 0;
    clear: both;
    margin: 10px 0 30px;
    height: 0;
}
p a,
p a:visited {
    line-height: inherit;
}
a:link {
    text-decoration: none;
}
a:focus {
    outline: 0;
}
a {
    outline: 0;
}
p a,
p a:visited {
    line-height: inherit;
}
a:focus {
    outline: 0;
}
#pre-header {
    margin: 5px 0 15px;
}
#facebook-link {
	position: absolute;
	top: 5px;
	right: 5px;
}
#facebook-link-2 {
	position: absolute;
	bottom: 10px;
	right: 10px;
    display: none;
}

#header {
    position: relative;
    background: #111 url(../icons/vintage.png);
    margin-bottom: 30px;
}

.logo-link {
  display: inline-block;
}

/* Make sure the active logo image scales fluidly */
.logo-img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}


/* HOME PAGE SLIDER STUFF */
#home-slider {
    margin-bottom: 30px;
    border-radius: 12px;
}
/* 1. Home Page Slider Container Setup */
.slider-container {
  position: relative;
  width: 100%;           /* Fills smaller screens entirely */
  aspect-ratio: 960 / 400;
  overflow: hidden;
  background-color: #000;
  box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}
.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  animation: slideSequence 40s infinite; 
}
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: slowZoom 40s infinite;
}

/* 2. Bottom-Left Caption Layout */
.slider-caption {
  position: absolute;
  bottom: 5px;        
  left: 5px;
  color: #fff;
  z-index: 10;    
  
  /* Transparent/Glassmorphism Base */
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  padding: 4px 4px;
  border-radius: 10px;
  border: 2px solid rgba(255, 255, 255, 0.15);
  
  /* Animation Hook */
  transform: translateY(15px);
  animation: captionFade 40s infinite;
}

/* 3. Caption Styling */
.slider-caption h3 {
  font-size: 1.2rem;   
  margin-bottom: 5px;
  font-weight: 600;
  letter-spacing: -0.5px;
  color: #fff;
}

/* 4. Slide Timing Delays (8-second increments) */
.slide:nth-child(1), .slide:nth-child(1) img, .slide:nth-child(1) .slider-caption { 
    animation-delay: 0s;
}
.slide:nth-child(2), .slide:nth-child(2) img, .slide:nth-child(2) .slider-caption {
    animation-delay: 8s;
} 
.slide:nth-child(3), .slide:nth-child(3) img, .slide:nth-child(3) .slider-caption {
    animation-delay: 16s;
}
.slide:nth-child(4), .slide:nth-child(4) img, .slide:nth-child(4) .slider-caption {
    animation-delay: 24s;
}
.slide:nth-child(5), .slide:nth-child(5) img, .slide:nth-child(5) .slider-caption {
    animation-delay: 32s;
}

/* 5. Timeline Keyframes */
@keyframes slideSequence {
  0%, 2% { opacity: 0; visibility: visible; }
  7%, 20% { opacity: 1; }
  25%, 100% { opacity: 0; visibility: hidden; }
}

@keyframes slowZoom {
  0% { transform: scale(1); }
  25% { transform: scale(1.15); }
  100% { transform: scale(1); }
}

@keyframes captionFade {
  0%, 2% { opacity: 0; transform: translateY(25px); }
  7%, 20% { opacity: 1; transform: translateY(0); }
  23%, 100% { opacity: 0; transform: translateY(-5px); }
}


/* --------------------------------------------------------------- */
/* CAPTIONED PRESERVE PHOTO CSS (Replaces the old old jQuery code) */
/* --------------------------------------------------------------- */
/* Base container style */
.caption-container {
    display: inline-flex;
    flex-direction: column;
    margin: 0 0 10px 0;
    box-sizing: border-box;
    background: #eee; /* Background to visualize container boundary */
    padding: 6px;       /* Adds the matching +12px overall width structure */
    border: 1px solid #ddd;
}
/* Enforce native responsive image sizing inside the container */
.caption-container img {
    display: block;
    max-width: 100%;
    height: auto;
}
/* Style the native text caption */
.caption-container figcaption {
    text-align: left;
    padding-left: 8px;
    font-size: 0.85rem;
    margin-top: 3px;
    color: #333;
    font-style: italic;
    box-sizing: border-box;
}
/* Handle Float Positions Cleanly */
.caption-container.float-right {
    float: right;
    margin-left: 10px;
}
.caption-container.float-left {
    float: left;
    margin-right: 10px;
}
/* Fallback logic if image is not floated */
.caption-container:not(.float-left):not(.float-right) {
    margin-top: 10px;
    display: flex; /* Centers or blocks nicely */
    width: fit-content;
}


#breadcrumbs {
    font-size: 11px;
}
#NewsLinks {
    overflow-wrap: break-word;
}

h1.page-title {
    font-size: 2em;
    line-height: 1.2em;
    border-bottom: 3px double #aaa;
    padding: 4px; 
    margin-bottom: 10px;
}

/* THIS PUTS A BORDER AROUND ALL IMAGES IN A PAGE OF
   TYPE PAGE-NODE UNLESS THE NOBORDER CLASS IS APPLIED */
.page-node #content-wrap img {
    border: 1px solid #cccccc;
    padding: 6px;
    height: auto;
    max-width: 97.4%;
    margin: 0.5em 1em 0.5em 0;
}

/* THERE IS NO CLASS OF CAPTION_CONTAINER */
/*.page-node #content-wrap .caption_container img {
    border: 0px;
    padding: 0px;
    margin: 6px 6px 6px 0;
}*/


/* CONSIDER DELETING THESE
.sidebar-bg {
    background: #fff url(../icons/sidebar-bg.png) left repeat-y;
}
#sidebar .block > h2 {
    font-weight: bold;
    background: url(../icons/heading-bg.png) center repeat-x;
    margin-bottom: 20px;
}
#sidebar .block > h2 span {
    background: #f9f9f9;
    padding-right: 15px;
}
#sidebar .block {
    margin-bottom: 30px;
}
#sidebar a {
    color: #666;
}
#sidebar a:hover {
    color: #e73420;
    text-decoration: none;
} */

.item-list ul {
    margin: 0;
    padding: 0 0 0 1.5385em;
}
.item-list ul li {
    margin: 0;
    padding: 0;
}
ul.menu li {
    margin: 0;
    padding: 0;
}
/*NEW ITEM-LIST STUFF FROM CSS1 IMMEDIATELY BELOW */
.item-list .pager {
    clear: both;
    text-align: center;
}
.item-list .pager li {
    display: inline;
    list-style-type: none;
    padding: 0.5em;
    background: #cfcfcf;
    border-radius: 3px;
    margin-right: 4px;
    text-shadow: 1px 1px #fff;
}
.pager-current {
    font-weight: bold;
}


/* HOME PAGE FOOTER STUFF */
#footer-bottom {
    padding-top: 10px;
    padding-bottom: 0px;
    background: #2c2c2c url(../icons/footer_bottom_bg.jpg) repeat-x top left;
    position: relative;
}
#footer-bottom p,
#footer-bottom a {
    font-size: 1.1em;
    color: #bbb;
}

#footer-area {
    background: none;
    padding: 40px;
    padding-bottom: 0px;
    font-size: 0.929em;
    position: relative;
}
#footer-area a {
    color: #ddd;
}
#footer-area a:hover {
    color: #e73420;
    text-decoration: none;
}

#footer-block-wrap {
    min-height: 290px;
}

.footer-block {
    float: left;
    width: 260px;
    margin-right: 50px;
    margin-bottom: 30px;
}
.footer-block .remove-margin {
    margin-right: 0;
}
.footer-block h2 { /* "Recently Updated" */
    text-align: center;
    color: #fff;
    font-size: 1.143em;
    border-bottom: 1px solid #bbb;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.view-recent-articles-block a {   /* SAVE THIS. ALSO THE PNG. */
    padding-left: 13px;
    background: url(../icons/grey_dot.png) no-repeat center left transparent;
}

/* SITE FOOTER STUFF */
#site-footer {
    padding-top: 10px;
    padding-bottom: 3px;
    margin: -40px -40px -40px;
    background: #212121 url(../icons/footer_bg.jpg) repeat-x top left;
    position: relative;
    bottom: 0;
    min-height: 103px;
    color: #bbb;
}
#site-footer p {
    font-size: 1em;
    padding: 0;
    margin: 0;
}
.region-footer {
    padding: 10px 20px;
    margin-bottom: 0;
}
#footer-right {
    float: right;
    width: 60%;
    text-align: right;
    position: relative;
}
#footer-left {
    float: left;
    width: 39%;
    position: relative;
}
.footer-right-link {
    float: right;
    display: inline;
}

.imgright {
    float: right;
    margin: 5px;
}
.imgleft {
    float: left;
    margin: 5px;
}


/* STYLES FOR THE CONTACT-US PAGE */
#contact  {
    width: 100%;
    padding: 0;
    margin: 0 0 20px 0;
    clear: both;
    overflow-wrap: break-word;
}
#contact-1,
#contact-2,
#contact-3 {
    text-align: center;
    float: left;
    width: 33%;
    min-width: 220px;
    border: 1px solid #dddddd;
}
#contact-1 > div:first-child,
#contact-2 > div:first-child,
#contact-3 > div:first-child {
    width: 90%;
    padding: 5% 5% 0;
    min-height: 140px;
}
#contact-4 {
    padding: 10px;
    border: 1px solid #dddddd;
    clear: both;
}


.page-ikc-updates ul.pager {
    padding-top: 2em;
}
.ikc-update .field-content { 
    display: inline;
    font-weight: bold;
}

body {
    background: url("../icons/body.png") repeat fixed 0% 0% transparent;
}

#header {
    background: #202020;
    border-radius: 10px 10px 0px 0px;
    margin-bottom: 0px;
}
#header-wrap {
    margin-bottom: 15px;
}

#site-slogan {
    background: #fff;
    text-align: center;
    font-style: italic;
    padding: 0px;
    margin-bottom: 15px;
    font-size: 1.5em;
    font-weight: bold;
    border-radius: 12px;
}
#ikc-manifesto {
    font-size: 1em;
    font-style:italic;
}
#ikc-manifesto img {
    max-width: 50% !important;
}
  
strong {
    color: black;
}
b {
    color: black;
    font-weight: bold;
}
#main-content {
    margin: 0 0 0 0;
}
#home-slider {
    margin-bottom: 15px;
}

.noborder {
    border: none !important;
}

div#ikc-updates-wrapper {
    position: relative;
    width: 100%;
}
div.ikc-update {
    float: left;
    text-align: center;
    width: 20%;
    padding-top: 15px;
}


/* NEW NAVIGATION STYLES FOR IKC SLIDESHOW */
.slideshow-navigation {
  display: grid;
  grid-template-columns: 1fr 3em 1fr;
  align-items: center;
  gap: 0.5rem;
  clear: both;
}
.slideshow-nav-btn {
  display: block;
  min-width: 0;
  text-decoration: none;
  color: #333333;
  background-color: #fff;
  padding: 0.4rem 0.5rem;
  border-radius: 20px;
  border: 1px solid #bbb;
  transition: all 0.2s ease;
}
/* Flex layout inside the outer buttons to handle text wrapping next to icons */
.slideshow-left, .slideshow-right {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem; /* Gap between the text and the icon */
}
.slideshow-left {
  justify-content: flex-start;
  text-align: left;
}
.slideshow-right {
  justify-content: flex-end;
  text-align: right;
}
.slideshow-middle {
  text-align: center;
  width: 3em;
  padding-left: 0;
  padding-right: 0; 
}
/* Icon style adjustments */
.slideshow-icon {
  font-weight: bold;
  flex-shrink: 0; /* Prevents the arrow from getting squished when text wraps */
}
/* Inner text container configuration for reliable wrapping */
.slideshow-btn-text {
  min-width: 0;
  overflow-wrap: break-word;
}
/* Hover effects */
.slideshow-nav-btn:hover {
  background-color: #007bff;
  color: #ffffff;
  border-color: #0056b3;
}


/* STYLES FOR DONOR TABLES */
.donor-table {
  width: 100%;
  text-align: center;
}  
.donor-table pre {
  margin: 0;
  padding: 2px 20px 0;
  line-height: 25px;
  text-align: center;
}
.donor-table th {
  background-color: #202020;
  text-align: center;
}


/* STYLES FOR JOIN-US ENTRIES */
.join-us p {
  margin: 0;
  font-weight: bold;
}
.join-us img {
  width: 75px;
  height: 75px;
  vertical-align: middle;
  border: 0 !important;
  margin: 0 !important;
}


div.clear {
    clear: both;
}
div.clear.padded {
    clear: both;
    padding-bottom: 20px;
}


/* RESPONSIVE TABLE FOR SLIDE #23 - DEFAULTS */
.responsive-table {
    width: 100%;
}
.responsive-table th, td {
    padding: 10px;
}
.responsive-table-header-text {
    text-align: center;
    color: white;
    font-family: arial;
}


/* INTRODUCE MEMBERSHIP RENEWAL BUTTONS */
.renew-bigtext {
   font-size: 20px;
   font-weight: bold;
   margin-top: 15px;
}

.accordion-display summary {
   font-weight: bold;
   cursor: pointer;
   padding: 8px;
}

/* STYLES FOR SIGNUP AND COMMENT FORMS */
.form-text-field {
    margin-top: 10px;
    font-weight: 700;
}
.form-text-field input,
.form-text-field textarea {
    width: 95%; 
    border-radius: 5px;
    display: block;
    margin: 0 auto;
}
.form-text-field textarea {
    box-sizing: border-box;
    resize: vertical;
    min-height: 100px;
}
.form-text-field input:focus,
.form-text-field textarea:focus {
    background-color: #ffe;
}
.radio-buttons {
    margin-top: 5px;
    margin-left: 0px;
    font-weight: 700;
    display: flex;
    width: 95%;
}
.radio-buttons .col {
    display: flex;
    gap: 4px;            /* Spacing between the circle and its text label */
    box-sizing: border-box;
}
.col-fixed {
    flex: 0 0 120px;     /* Adjust if you need a wider first column */
    padding-left: 15px;
}
.col-fluid {
    flex: 1;             
}
#submit-button {
    margin-top: 15px;
    color: #000000;
    background: #ffc039;
    border-radius: 10px;
    border: 2px solid #000000;
    text-shadow: none;
    box-shadow: none;
}
.form-banner {  /* Form submission results banner */
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 0 6px 6px 0;
    margin-bottom: 1.5rem;
}
.form-banner.success {
    background-color: #c0ffc4;
    border-left: 4px solid #16a34a;
    color: #14532d;
}
.form-banner.failure {
    background-color: #ffc0c4;
    border-left: 4px solid #a3164a;
    color: #53142d;
}
.form-banner span {
    cursor: pointer;
    font-size: 1.5rem;
    float: right;
    margin-top: -0.5rem;
}

@media only screen and (min-width: 768.0px) {
    .slideshow-navigation {
        gap: 1.5rem;
    }
}



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

    div.ikc-update {
        width: 25%;
        padding-top: 10px;
    }
	
    #pre-header {
        margin: 0 0 15px 0;
    }

	#ILPA-shorten {
        display: none;
    }
	
    #site-footer {
        padding-bottom: 0px;
    }

    #contact-1,
    #contact-2,
    #contact-3 {
        width: 100%;
    }
    #contact-1 > div:first-child,
    #contact-2 > div:first-child,
    #contact-3 > div:first-child {
        width: 90%;
        padding: 5% 5% 0;
    }
}



@media only screen and (min-width: 768.0px) and (max-width: 990.0px) {
    #wrap {
        width: 690px;
    }
    #content {
        width: 380px;
    }
/*    #sidebar {
        width: 190px;
    }
    .sidebar-bg {
        background-image: url(../icons/sidebar-bg-tablet.png);
    }
*/
    .preface-block,
    .footer-block {
        float: left;
        width: 190px;
        margin-right: 20px;
    }
}



@media only screen and (max-width: 767.98px) {
    
    #footer-block-wrap {
        display: none;
    }
    #footer-left {
        width: 100%;
        text-align: center;
    }
    #footer-right {
        display: none;
    }
    #header-wrap {
        margin-bottom: 0px;
    }
    #home-slider {
        margin-bottom: 0px;
        border-radius: 0px;
    }
    #site-slogan {   /* Make it smaller on mobile */
        font-size: 1em;
        margin-bottom: 0px;
        border-radius: 0px;
    }
    #ikc-manifesto {
        font-size: 0.8em;
    }

    #pre-header {
        margin: 0 0 0px 0;
    }
    
    /* KEEP THIS - MAKES IMAGES EXPAND TO 100% ON MOBILE */
    .region-content img {
        max-width: 96% !important;
        margin: 1em auto !important;
        padding: 2% !important;
    }
    
    #ikc-updates-wrapper img {
        width: 95.9% !important;
        margin: 0 auto !important;
        padding: 0 2% !important;
    }

    #wrap {
        width: 280px;
    }
    #content {
        width: 100%;
    }
    .container {
        border-radius: 0px;
    }

    ul.inline li {
        display: block;
        padding: 5px;
    }
/*    #sidebar {
        width: 100%;
    }
*/
    .preface-block,
    .footer-block {
        width: 100%;
    }
    
    .slider-caption {
        bottom: 2px;      /* Pulls the box closer to corners on tiny screens */
        left: 2px;  
        padding: 3px 3px;
    }
    .slider-caption h3 {
        font-size: 0.7rem; /* Scales titles to fit smaller container */
        margin-bottom: 2px;
    }

/*    .sidebar-bg {
        background-image: none;
        margin-bottom: 0;
    }
    #sidebar {
        width: 100%;
        background: #f9f9f9;
        margin: 30px -30px -30px;
        padding: 30px;
        border-top: 1px solid #ddd;
    }
*/
    div.ikc-update {
        width: 33.333%;
        padding-top: 10px;
    }
    #main-content table {
        max-width: 100% !important;
        border-top: none !important;
        border-right: none !important;
    }
    #main-content table tbody tr td {
        float: left;
        width: 94%;
        margin: 0px !important;
        padding: 3% !important;
    }
    
    /* RESPONSIVE TABLE FOR SLIDESHOW #23 ONLY ! */
    /*Force table structural elements to behave like full-width blocks */
    .responsive-table, 
    .responsive-table tbody, 
    .responsive-table tr, 
    .responsive-table th, 
    .responsive-table td {
      display: block !important;
      width: 100% !important;
      box-sizing: border-box;
    }
    /* Create an isolated card container for each row to stop color bleeding */
    .responsive-table tr {
      margin-bottom: 25px !important;
      border: 1px solid #ccc;
      background-color: #ffffff; /* Prevents background color leakage */
      overflow: hidden; /* Clears any broken layouts or floats */
    }
    /* Force headers to span full width and clear internal alignment */
    .responsive-table th {
      width: 100% !important;
      padding: 15px 10px !important;
      float: none !important;
      clear: both;
    }
    /* Force description cells to start fresh below the header */
    .responsive-table td {
      float: none !important;
      clear: both;
      padding: 15px !important;
    }
    /* Un-float images so they don't smash text sideways on small screens */
    .responsive-table td img {
      float: none !important;
      display: block;
      margin: 0 auto 15px auto !important;
      max-width: 100%;
      height: auto;
    }
    /* MOVE FB LINK FROM TOP TO BOTTOM ON MOBILE */
    #facebook-link {
	  display: none;
    }
    #facebook-link-2 {
	  display: block;
    }
}



@media only screen and (min-width: 480.00px) and (max-width: 767.98px) {
    #wrap {
        width: 370px;
    }
}



@media only screen and (max-width: 479.98px) {
    #site-slogan { 
        font-size: 0.8em;
        margin-bottom: 0px;
    }
    #ikc-manifesto {
        font-size: 0.7em;
    }
    
    #header-wrap {
        margin-bottom: 0px;
    }
    #footer-left {
    }

    div#site-footer {
        min-height: 123px;
    }
    div.ikc-update {
        width: 50%;
        padding-top: 10px;
    }
    span.slideshow-btn-text {
        font-size: 0.55em;
    }
    #small-disappear {
        display: none;
    }
}
