/* for layout debug */
/*  div {border: 1px red solid;}  */

p
{
	margin-top: 0.6em; /* was 0.4 */
	margin-bottom: 0em;
	/* line-height:120%; /* was 120%; now 100% for mobile default */
}

.indent
{
	margin-left:20px;
}

h1
{
	font-family: Sans-serif;
	font-size: 300%;
	font-weight: normal;
	margin-top: 0em;
	margin-bottom: 0em;
}

h2
{
	line-height: 120%;
	font-family: Sans-serif;
	font-weight: normal;
	margin-top: 1em;
	margin-bottom: 0.3em;
}

h3
{
	font-family: Sans-serif;
	font-size: large;
	margin-top: 1em;	
	margin-bottom: 0em;
}

a
{
	outline:none;
}

/* keep link stuff in this order: link, visited, hover, active  */
a:link
{
	text-decoration: none;
	color: #2B802E;
}

a:visited
{
	text-decoration:none;
	color: #2B802E;	
}

a:hover
{
	text-decoration: none;
	color: #00BB02;
	border-bottom: 1px dashed #2B802E;
}

a:hover.no-line
{
	text-decoration: none;
	color: #00BB02;
	border-bottom: none;
}

a:active
{
	text-decoration:none;
}

body
{
	font-family: Sans-serif;
	/* line-height: normal; */
	font-style: normal;
	color: black;  /* set default text colour */
}

p { font-family: Sans-serif; }

blockquote  {
	margin-top: 4px;
	margin-bottom: 8px;
	margin-left: 16px;
}

.guestquoteblock
{
	border: 2px solid #393;
	margin-left: 20px;
	margin-right: 20px;
}

.guestquote
{
	font-family: Sans-serif;
	font-style: italic;
	margin: 5px;
}

.bold
{
	font-weight: bold;
	font-size: medium;
}

.italic
{
	font-family: Sans-serif;
	font-style: italic;
}

p.it_bold
{
	font-family: Sans-serif;
	font-style: italic;
	font-weight: bold;
}

p.foot
{
	font-family: Sans-serif;
	font-size: x-small;
}

p.ornate
{
	font-family: "Comic Sans MS",Sans-serif;
	font-size: 11pt;
	margin-top:0.8em;
	line-height:140%;
}

p.centre
{
	text-align: center;
	font-weight: bold;
	font-family: "Comic Sans MS", Sans-serif;
	font-size: 16pt;
}

p.credit
{
	font-family: Sans-serif;
	font-size: small;
	font-style: italic;
}

p.fon-logo
{
	font-family: Sans-serif;
	font-size: x-small;
	margin-top: -4px;
	text-align: center;
}

ul.no_bullet
{
	list-style-type: none;
	margin-left: 5mm;
	margin-bottom: 0em;
}

ul.compact
{
	line-height: 130%; /* was 120% */
	list-style-type: disc;
	margin-top: 0.3em;
	margin-bottom: 0em;
	list-style-image: url(images/square_5px.png);
}

ul li.space
{	margin-top: 3px;
}

ul.compact2
{	line-height: 130%; /* was 120% */
	list-style-type: disc;
	margin: 0pt;
	padding-left:15pt;
	list-style-image: url(images/square_5px.png);
}

ul.compact3
{	line-height: 130%; /* was 120% */
	list-style-type: disc;
	margin: 0pt;
	padding-left:2%;
	list-style-image: url(images/square_5px.png);
}

ul.open
{
	line-height: 160%; /* was 120% */
	list-style-type: disc;
	margin-top: 0.8em;
	margin-bottom: 0em;
	list-style-image: url(images/swoosh-green.png);
	margin-left: 20px; 
	padding: 0;
}

ol.compact
{
	line-height: 130%;
}

.compact4
{	margin-top: 0.5em;
}

html,body { border: 0pt; }

table
{	
	border-collapse:collapse;
	font-size:small;
}

th, td
{	border-bottom:1px solid lightgreen;
	padding:3px;
}

.table-date
{	color:white;
}

tr:nth-child(even)
{	 background-color:#393;
}

.strike
{	text-decoration-line: line-through;
	text-decoration-thickness: 4px;
}

.greyout
{	color: gray;
}

/* centre an element  */
.center  {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#container { width: 700px; }

/* picture layouts  */
img.scaled { width: 100%; }

.drwg_small_right
{
	float: right;
	width: 190px;
/*	height: 129px;  */
}

.float_right
{
	float:right;
	margin-left:10px;
	margin-top:10px;
}

.float_left
{
	float:left;
	margin-right: 5px;
}

.float_left_indent
{
	float:left;
	margin-left:20px;
	margin-right:20px;
}

.text_centre
{
	text-align:center;
}

div.clear { clear: both; }
br.clear_both {clear:both;}

span.pseudolink { color: blue; }  /* set link colours?? */

span.bold { font-weight: bold; }
h3.italic { font-style: italic; }

.ftb_container
{
	display: flex;
	flex-direction:row;
	flex-wrap: wrap;
	justify-content: flex-start;  /* default */
	margin-top: 1em;
	margin-bottom: 0em;
	margin-left:20px;
}

.logo_container  {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
}

.ftb_review_full
{
	width:850px;
	/* min 785px  */
	clear:both;
}

.div-text
{	height: 100px;
	position: relative;
	width:90px;
	margin-left: 10px;
}

.vertical-centre
{	margin: 0;
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.menubox
{
	display:flex;
	flex-direction:column;
	align-items:center;
	border: 6px #393 solid;
	padding:0px 0px 0px 0px;
	height: 50px;
	width: 89px;
	border-radius:10px;
	margin-right:0px;
	margin-top: 5px;
	background-color: white	;
}

.textbox_s4
{
	border: thick #393 solid;
	border-radius: 10px;
	margin-bottom: 10px;
	text-align: center;
	padding-top: 10px;
}

.booknow_large
{
	color: #393;
	font-weight: bolder;
	font-size: xx-large;
}

.button-ftb
{
	border: 6px #393 solid;
	padding: 0px;
	height: 142px;
	border-radius: 10px;
	margin-right: 20px;
	text-align: center;
	margin-top: 7px;
	/* was 14px */
	margin-bottom: 10px;
	font-size: x-large;
	background-color: white;
	white-space: normal;
	transition-duration: 0.2s;
	color: black;
}

.button-ftb-extra
{
	width: 220px;
	margin: 20px;
}

.button-ftb:hover
{
	background-color: #DEFFDE;
}

.button-normal
{
	width: 200px;
}

.button-review-small
{
	width: 100px;
}

.button-content
{
	margin-top: 20px;
}

/* very useful hack for clearing... */
.clearfix::after {
	content: "";
	clear: both;
	display: table;
}

/* from w3schools, How to - tab gallery. Tweaked, of course. */

.row {
	display:flex;
	align-items: flex-end;
}

/* The grid: Six equal columns that floats next to each other */
 .column6 {
	float: left;
	width: 13.33%;   /* (100 / 6) x 80%. See width .containerImg */
	padding: 5px;
} 

/* Style the images inside the grid */
 .column6 img
{
	opacity: 0.8;
	cursor: pointer;
	position: relative;
	border: 1px solid LightGrey;
}

 .column6 img:hover {
	opacity: 1;
} 

/* Clear floats after the columns */
 .row:after {
	content: "";
	display: table;
	clear: both; 
} 

/* The expanding image container */
 .containerImg {
	position: relative;
  	display: block;
	width: 80%;   /* See .column6  */
} 

/* Expanding image text */
 #imgtext {
	  position: absolute;
	  top: 15px;
	  left: 15px;
	  color: white;
	  font-size: 20px;
	  opacity: 0.8;
	  text-shadow:-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black
} 

/* Expanding image long text */
  #longtext {
	  position: absolute;
	  bottom: -15px;
	  left: 5px;
	  color: black;
	  font-size: 12px;
}

/* Closable button inside the expanded image (not used) */
 .closebtn {
	  position: absolute;
	  top: 10px;
	  right: 15px;
	  color: white;
	  background: #393;
	  opacity: 0.7;
	  font-size: 16px;
	  cursor: pointer;
}

/* End w3schools How-to. */

/* Responsive website code - guided by https://www.w3schools.com
Added 31Aug2021

phone: always 100%
tablet: min-width 600px
desktop: min-width 768px

use layout structure of 12 columns as example. Probably only 4 necessary.
*/

* {
  box-sizing: border-box;
  }
  
.row-resp::after {
	  content: "";
	  clear: both;
	  display: table;
  }

/* for mobile phone */
[class*="col-"] {
	  width: 100%;
	  float: left;
	  padding-left: 2px;
	  padding-right: 2px;
	  padding-top: 0%;
	  padding-bottom: 0%;
  }

/* for tablet s-small*/
@media only screen and (min-width: 600px) {
	  .col-s-1 {width: 8.33%;}
	  .col-s-2 {width: 16.66%;}
	  .col-s-3 {width: 25%;}
	  .col-s-4 {width: 33.33%;}
	  .col-s-5 {width: 41.66%;}
	  .col-s-6 {width: 50%;}
	  .col-s-7 {width: 58.33%;}
	  .col-s-8 {width: 66.66%;}
	  .col-s-9 {width: 75%;}
	  .col-s-10 {width: 83.33%;}
	  .col-s-11 {width: 91.66%;}
	  .col-s-12 {width: 100%;}
	   ul.menu-list {width: 80px; background-color: white;}
}  

/* for desktop default*/
@media only screen and (min-width: 768px) {
	  .col-1 {width: 8.33%;}
	  .col-2 {width: 16.66%;}
	  .col-3 {width: 25%;}
	  .col-4 {width: 33.33%;}
	  .col-5 {width: 41.66%;}
	  .col-6 {width: 50%;}
	  .col-7 {width: 58.33%;}
	  .col-8 {width: 66.66%;}
	  .col-9 {width: 75%;}
	  .col-10 {width: 83.33%;}
	  .col-11 {width: 91.66%;}
	  .col-12 {width: 100%;}
	   ul.menu-list {width: 80px; background-color: white;}
}

/* for desktop l-large*/
@media only screen and (min-width: 1300px) {
	  .col-l-1 {width: 8.33%;}
	  .col-l-2 {width: 16.66%;}
	  .col-l-3 {width: 25%;}
	  .col-l-4 {width: 33.33%;}
	  .col-l-5 {width: 41.66%;}
	  .col-l-6 {width: 50%;}
	  .col-l-7 {width: 58.33%;}
	  .col-l-8 {width: 66.66%;}
	  .col-l-9 {width: 75%;}
	  .col-l-10 {width: 83.33%;}
	  .col-l-11 {width: 91.66%;}
	  .col-l-12 {width: 100%;}
	   ul.menu-list {width: 80px; background-color: white;}
}

/* for mobile phone, hide elements to make room */
@media only screen and (max-width: 599px) {
  .hide-width1 {
	display: none;
    }
  /* div.normal-text p {  */
  p {
	line-height: 100%;
    } 
}

/* for tablet, hide bigger elements */
@media only screen and (min-width: 600px) and (max-width: 767px) {
  div.hide-width2 {
	display: none; 
    }
  /* div.normal-text p { */
  p {
	line-height: 140%;
    }  
}

/* for desktop, hide elements for smaller screens */
@media only screen and (min-width: 768px) {
  div.hide-width3 {
  	display: none; 
  }
  p {
  	line-height: 140%;
  }
}

/* for outlines of divs, to give breaks in a page. Declare style first! */
.top-bottom
{	border: #393 solid;
	border-top-width: 2pt;
	border-left-width: 0px;
	border-bottom-width: 0pt;
	border-right-width: 0px;
	margin-top: 5px;
}

/* menu help from 
https://www.w3schools.com/css/tryit.asp?filename=trycss_dropdown_navbar2 and
https://www.w3schools.com/css/tryit.asp?filename=trycss_navbar_horizontal_responsive */

/* for main menu */
ul.menu-list
{
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

ul.menu-list li  {
	float: left;
}

.menu-list li a, .dropbtn  {
	display: inline-block;
	color: #2B802E;
	text-align: center;
	padding: 8px 4px;
	text-decoration: none;
	transition-duration: 0.2s;
}

.menu-list li a:hover, .dropdown:hover .dropbtn
{
	background-color: #DEFFDE;    /* was powderblue */
	border-bottom: none;
}

.menu-list li.dropdown  {
	display: inline-block;
}

div.dropdown-content  {
	display: none;
	position: absolute;
	width: 90px;
	z-index: 1;
	}

/* for phone drop down over other content  */
@media only screen and (max-width: 599px) {
	div.dropdown-content  {
		background-color: #F9F9F9;
		box-shadow: 8px 8px 6px 0px rgba(0,0,0,0.2); 
		}
} 

/* for all except phone drop down */
@media only screen and (min-width: 600px)  { 
	div.dropdown-content  {
		background-color: white; 
		}
}

div.dropdown-content a  {
	color: #2B802E;
	padding: 8px 4px;
	text-decoration: none;
	display: block;
	text-align: left;
}

.dropdown-content a:hover {
	background-color: #F1F1F1;
	border-bottom: none;
}

.dropdown:hover .dropdown-content {display: block;}

.button1
{
	border: medium #393 solid;
	border-radius: 10px;
	font-size: 12pt;
	font-weight: bold;
	background-color: white;
	margin-top: 10px;
	color: black;
	transition-duration:0.1s;
}

.button1:hover
{
	background-color: #DEFFDE;
}

.form-field  {
	margin-bottom: 10px;
}

/* collapsible info from W3Schools  */

.collapsible
{
	background-color: white;
	color: #393;
	cursor: pointer;
	padding: 3px;
	border: 2px solid black;
	border-radius: 10px;
	text-align: left;
	outline: none;
	font-size: inherit;
	margin: 5px;
}

.active, .collapsible:hover {
  background-color: #00BB02;
  color: white;
}

.content {
  padding: 0 18px;
  max-height: 0;
  overflow-x: hidden;
  overflow-y:auto;
  transition: max-height 0.4s ease-out;
  background-color: #F3FFF9;
}

.pic_right {
  width:90%;
  float:right;
}
