/*----------------------

blondinmemorialtrust.com

------------------------
*/


/* -----------
LOGO FONT / .navbar-brand / GOOGLE FONT
"Parisienne"
font-weight: 400;
}

NAVIGATION & LINK FONT / GOOOGLE FONT
Lato
font-weight: 300;

BODY FONT
"EB Garamond", serif
font-weight: 400;
}
------------ */


/* -----------
H1 Heading: Moorshine  - reduced files to essentials */
@font-face {
  font-family: 'The Morshine';
  src: url('../fonts/The-Morshine.woff2') format('woff2'),
       url('../fonts/The-Morshine.woff') format('woff');
}

/*-----------
H2-h6 Heading / GOOOGLE FONT
Lato
// <weight>: 300

------------ */



/*!
 * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2024 Fonticons, Inc.
 */

/* Selected edit taken from original files see Fontasweome folder - fontawesome.css*/

.fa {
  font-family: var(--fa-style-family, "Font Awesome 6 Free");
  font-weight: var(--fa-style, 900); 
}

.fas,
.fa {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
}
.fas::before,
.fa::before {
  content: var(--fa); }
.fas {
  font-family: 'Font Awesome 6 Free';}
.fa-sm {
  font-size: 0.875em;
  line-height: 0.07143em;
  vertical-align: 0.05357em; 
}
.fa-lg {
  font-size: 1.25em;
  line-height: 0.05em;
  vertical-align: -0.075em; 
}
.fa-chevron-up {
  --fa: "\f077"; }
.fa-chevron-down {
  --fa: "\f078"; }
.fa-circle { 
	--fa: "\f111"}
.fa-info-circle {
  --fa: "\f05a"; }
.fa-book {
  --fa: "\f02d"; }
.fa-file-pdf {
  --fa: "\f1c1"; }
.fa-download:before{  
	--fa: "\f019";  position: relative; top:-1px;color:#a8a8a8!important;font-size:1rem;margin-left:3px;}
.fa-external-link-alt { 
	--fa: "\f35d"; position: relative; top:-1px;color:#a8a8a8!important;font-size:0.7rem;}
/* second fontawsome styles needed taken from ..fontawesome/css/solid.css */
:host,:root{
	--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}
@font-face{font-family:"Font Awesome 6 Free"
	;font-style:normal;
	font-weight:900;
	font-display:block;
	src:url(../fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),
		url(../fontawesome/webfonts/fa-solid-900.ttf) format("truetype")}
.fa-solid,.fas{font-weight:900;
}


/* 
Modifications to Themebau template 2.0.1 https://runwebrun.com/themebau/
created May 2025
using
Bootstrap v5.1.0 (https://getbootstrap.com/)
 */



:root {
--bs-body-font-family:"EB Garamond", serif; font-optical-sizing: auto;
--bs-body-font-size:1rem;/* no change */
--bs-body-font-weight:400;/* no change */
--bs-body-line-height:1.6;/* no change */
--bs-font-sans-serif: "Lato", sans-serif;
--bs-body-color:#4A4A4A; 
--bs-body-bg:#F1EAD9;
--bs-body-bg-light:#F9F6EF;
--blondin-blue:#15608e;
--blondin-blue-hover:#1976AF;
--color-heading:#b62f3e;
--color-link:#6a4b42;
--inline-page-color-link:#a7843a;
--inline-page-color-link-hover:#CAA52C;
--color-link-hover:#CAA52C;
--nav-color:#6a4b42 /* was gold #a7843a; */
--color-nav-active: #BF615F;
--color-nav-hover: #CAA52C;	  

}


html {
  overflow-x: hidden; /*IMPORTANT: fixed overflow issue */
}

body {
  color: var(--bs-body-color);
}



.bg-light {
	background-color: var(--bs-body-bg-light)!important;
}


a { 
	color:var(--color-link);
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a:focus, a:hover {
	color:var(--color-link-hover);
}

p a { 
	color:var(--inline-page-color-link);
	text-decoration: none;
}
strong {}

 ul {
	padding-left:15px
}

.dash-list {
  list-style: none;
  padding-left: 15px;
}

.dash-list li::before {
  content: "—";
  margin-left: -15px;
  display: inline-block;
  width: 15px;
}



.figure-caption a { 
	color: #969696;
}
.figure-caption a:hover {
text-decoration: underline
}


.figure-caption.lg {
	font-size: .9375em;
}




.h1, h1  {
	font-family: 'The Morshine';
	letter-spacing: 0.1rem;
	color:var(--color-heading)!important;
	font-weight: 400;
}



.h2, .h3, .h4, .h5, .h6, h2, h3, h4, h5, h6  {
	font-family: "Rosarivo", cursive;
	color:var(--color-heading);
	font-weight: 300;
}


/*
.display-4 {
	font-size: calc(1.475rem + 2.7vw);
	font-weight: 300;
	line-height: 1.2
}

@media (min-width:1200px) {
.display-4 {
	font-size: 3.5rem
}
}

.display-4 {
	margin-bottom: .4em;
	font-size: 6.25em
}

@media (min-width:620px) and (max-width:827.98px) {
.display-4 {
	margin-bottom: .5em;
	font-size: 5em
}
}

@media (max-width:619.98px) {
.display-4 {
	margin-bottom: .5714285714em;
	font-size: 4.375em
}
}

@media screen and (max-width:440px) {
.display-4 {
	margin-bottom: .7272727273em;
	font-size: 3.4375em
}
}

@media (min-width:1200px) {
.display-1 {
	font-size: 5rem
}


*/

.display-4 {
	margin-bottom: .5em;
	font-size: 5em
}

@media (max-width:619.98px) {
.display-4 {
	margin-bottom: .5714285714em;
	font-size: 3.25em
}
}

@media screen and (max-width:440px) {
.display-4 {
	margin-bottom: .7272727273em;
	font-size:3.25em
}
}
@media (min-width:828px) {
.display-1 {
margin-bottom: .4em;
	font-size: 6.25em
}
}
@media (max-width:619.98px) {
.display-1 {
		margin-bottom: .7272727273em;
	font-size: 3.4375em
}
}

@media screen and (max-width:440px) {
.display-1 {
	margin-bottom: .7272727273em;
	font-size:3.25em
}
}


.blockquote, blockquote {
	font-style: italic!important}

.blockquote-footer {
	margin-top: -3.0588235294em;
	margin-bottom:1.666665rem;
	font-size: .875em;
	color: #969696
}


.hr, hr {
	margin-top: 2.25em;
	margin-bottom: 2.25em;
	background-color: transparent;
	border-top: 2px solid #CAA52C
}

.border, .border-top {
	border-color:rgba(106, 75, 66,.125)!important
}

.figure-img {
	margin-bottom: .5rem;
}

.rounded-4 {
	border-radius: 1rem!important
}

/*---------------
DOCUMENTS SPACING
----------------- */

p {
	margin-bottom:.6285714286em
}
p+p {
margin-bottom: .6285714286em
}
p:last-of-type {
	margin-bottom:  1.2941176471em
}
h4 {
	margin-top: 1.8333333333em
}

.documents p {
	margin-bottom:1.2941176471em
}




/* 24384*/
.navbar-top::before {
  background-color: var(--bs-body-bg);
}

@media (min-width:600px) {
.w-sm-75 {
	width:75%!important
}
}
@media (min-width:600px) {
.w-sm-100 {
	width:100%!important
}
}
@media (min-width:828px) {
.w-md-25 {
		width:25%!important
}
}
@media (min-width:828px) {
.w-md-50 {
		width:50%!important
}
}
@media (min-width:828px) {
.w-md-100 {
		width:100%!important
}
}
	


/*
Themebau 'Inter' converted to use 'Open Sans' font
--------------
*/
.btn,.tooltip,.popover,.subtitle,.form-control, .form-select{
font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-variation-settings:"wdth" 100;
}


/* NAVIGATION

-------------------  

*/



/* NAVIGATION default links hover color
original Bootstap at line 4647  */
.nav-link:focus, .nav-link:hover{
}


/* Desktop NAVIGATION BAR MODIFICATIONS
Default links color and spacing at line 24589
*/
.navbar-nav:not(.nav-social) .nav-link {
	font-family:"Lato", sans-serif;
	font-size: 0.9rem;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-variation-settings:"wdth" 100;
		 color:var(--nav-color); 
	letter-spacing: 0.02rem;
	padding:6px 7px;
}

/* desktop navigation bar spacing */
@media (min-width:828px) {
.navbar-nav:not(.nav-social) .nav-link {
	padding:6px 8px; 
	letter-spacing: 0.01rem;}
}
@media (min-width:1024px) {
.navbar-nav:not(.nav-social) .nav-link {
	padding:6px 11px; 
	letter-spacing: 0.02rem}
}
@media (min-width:1200px) {
.navbar-nav:not(.nav-social) .nav-link {
	padding:6px 12px}
}

.navbar .navbar-nav {
  flex-wrap: nowrap;
  min-width: 0;
}

.navbar .navbar-nav .nav-item {
  flex: 0 1 auto;
  min-width: 0;
}

.navbar-nav:not(.nav-social) .nav-link {
  white-space: nowrap;
  min-width: 0;
}


/* NAVIGATION  .active color
modification to Themebau modification at line 24343 . */
.navbar .navbar-nav .nav-link:hover{
	color:var(--color-nav-hover)
}


/* NAVIGATION 'active' on hover color
original Bootstap at line 22206  */
.nav-item.active>.nav-link {
	color:#991f2d
}
.nav-item.active>.nav-link:focus, .nav-item.active>.nav-link:hover {
color:#991f2d;
}
	

	

/* NAVIGATION remove opacity Themebau modification on hover at line 22214  */

.nav:not(.nav-opacity).focus .nav-link, .nav:not(.nav-opacity):hover .nav-link {
	opacity:1;
}
.nav:not(.nav-opacity).focus .active>.nav-link, .nav:not(.nav-opacity).focus .nav-link.active, .nav:not(.nav-opacity):hover .active>.nav-link, .nav:not(.nav-opacity):hover .nav-link.active {
	opacity: 1;
}
.nav:not(.nav-opacity) .nav-link.active, .nav:not(.nav-opacity) .nav-link:focus, .nav:not(.nav-opacity) .nav-link:hover {
	opacity: 1;

}




/* NAVIGATION MOBILE */


/* modifications to Themebau modification at line 25016 */

.navbar-mobile .navbar-body>.navbar-nav .nav-link {
	font-size: 1.5rem!important;
	padding-top: 5px;
	padding-bottom: 5px
}
.navbar-mobile .navbar-body>.navbar-nav .navbar-nav {
	line-height: 2.5
}

/* modifications to Themebau modification at line 25068 */


@media (max-width:1023.98px) {
.navbar-mobile-style-2 .navbar-head, 
	.navbar-mobile {
	background-color:  var(--bs-body-bg)!important;
}
}



/* modif of line 25060 from Themebau addiition
Added for when using container-fluid to stop logo and 'X' shifting on dropdown of mobile navigation bar */

.navbar-mobile-style-2>.container-fluid {
	display: block;
	margin-bottom: 50px
}
.navbar-mobile-style-2>.container-fluid{ /* My addition to place links higher */
	margin-top: -30px
}
@media all and (-ms-high-contrast:none), (-ms-high-contrast:active) {
.navbar-mobile-style-2>.container-fluid {
	margin-top: 90px
}
}
.navbar-mobile-style-2 .navbar-head {
	margin-bottom: 50px
}
.navbar-mobile-style-2 .navbar-head .container-fluid {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}



/* LOGO
-------------------  */

.navbar-brand {
  font-family: "Parisienne", cursive;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.5px;
  color: var(--blondin-blue);
  font-size: clamp(1.2rem, 1.3rem + 0.6vw, 2.4rem); /* bigger min + max */
}

.navbar-brand:hover {
  color: var(--blondin-blue-hover);
}

@media (max-width: 1050px) {
  .navbar-brand {
    font-size: clamp(1.1rem, 1.2rem + 0.5vw, 2rem); /* still generous */
  }
}

@media (max-width: 900px) {
  .navbar-brand {
    font-size: clamp(1rem, 1.1rem + 0.4vw, 1.8rem);
  }
}
/*
@media (min-width: 375px) {
  .navbar-brand {
    font-size: clamp(1.2rem, 1.3rem + 0.6vw, 2.4rem);
  }
}
*/

/*
.navbar-brand {
  font-family: "Parisienne", cursive;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.5px;
  color: var(--blondin-blue);
  font-size: clamp(1rem, 1.1rem + 0.5vw, 2rem);
}

.navbar-brand:hover {
  color: var(--blondin-blue-hover);
}

@media (max-width: 1050px) {
  .navbar-brand {
    font-size: clamp(0.95rem, 1rem + 0.4vw, 1.5rem);
  }
}

@media (max-width: 900px) {
  .navbar-brand {
    font-size: clamp(0.9rem, 0.95rem + 0.3vw, 1.3rem);
  }
}
*/


/*--------------
LANGUAGE SWITCHER
-------------*/

.lang-switcher header {  position: relative}
.lang-switcher ul {  position: absolute}
.lang-switcher .nav-item a {
	font-weight: 600; 
	text-transform: uppercase; 
	font-size: 0.55rem; 
	letter-spacing: 0.01rem;
	color:#93999D;
	display: inline-block; }
.lang-switcher .nav-item a:hover {color:#CAA52C}
.lang-switcher li{font-family: var(--bs-font-sans-serif)}
.lang-switcher li.line{font-size: 1.15rem; padding-top:3px;color:#93999D;}
.lang-switcher .nav-item a.active {color:#4A4A4A; }
.lang-switcher .nav-item a.active:hover {color:#4A4A4A}

.lang-navbar .nav-link {
	padding:4px 15px}
@media (min-width:828px) {
.lang-navbar .nav-link {
	padding:4px 6px}
	}
.lang-navbar {
  position: fixed;
  top: 0;
  width: 100%;
  height: 30px;              /* Adjust height as needed */
  line-height: 20px;         /* Vertically centre text */
  background-color: transparent; 
  z-index: 1050;           
}
.lang-navbar::before {
	transform: translateY(-100%);/* to behave as .navbar-top and slide .lang-navbar out of view */
	top: 30px; /* below secondary */
  width: 100%;
  height: 56px; /* adjust if different */
  line-height: 56px;
  background-color: #F1EAD9; /* or your navbar background */
  z-index: 1040;
  transition: transform 0.3s ease;
}
.navbar-top {
  position: fixed !important;
  z-index: 1040;            /* Below secondary navbar */
}
/* Push page content down so it’s not hidden behind navbars */
body {
  padding-top:86px;        /* 30px secondary + 90px main navbar height */
}
/* Hide navbars when scrolling down to match Themebau .navbar-top behaviour */
.lang-navbar.navbar-hidden {
  transform: translateY(-100%);
}

header.lang-navbar .nav .nav-link{
  font-size: clamp(8px, 0.55rem, 10px);
}






/* BUTTON 
---------------------------*/

.btn {
	letter-spacing:1px;
}

/* do i need to keep?
@media(min-width:992px){
	.btn{font-size:.85rem;
	}
}
*/


.btn {
	color:#FFF8E3;
	background-color:var(--gold);
}
.btn:hover {
	color: #fff;
	background-color:#B8860B;
}


.btn  {	
	color: #fff;
  background-color: #BA8C2C; /* a touch brighter */ 
  padding: 1rem 1.3rem;
  border: none;
  font-family: "Lato", sans-serif;
  font-size: .85rem; 
font-weight: 600; 
  border-radius:80px;
  transition: all 0.3s ease;
}

.btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 120%;
  height: 100%;
  transform: translateX(-50%);
  pointer-events: none;
}
.btn:hover {
  color:#EDE4C3;
  background: #a7843a; 
}




.btn-clean {
  font-family: var(--bs-body-font-family);
color:var(--inline-page-color-link);
	  font-size:1rem; 
font-weight:400;
	letter-spacing: 0;
	padding: 0;
	background-color: transparent
}
.btn-clean:hover {
	color: var(--color-link-hover);
text-decoration: underline;
	padding: 0;
	background-color: transparent
}
.btn-clean .icon-arrow-right, .btn-clean .swiper-button-next svg, .swiper-button-next .btn-clean svg {
	margin-left: 17px
}
.btn-clean .icon-arrow-left, .btn-clean .swiper-button-prev svg, .swiper-button-prev .btn-clean svg {
	margin-right: 17px
}





/* NAVIGATION TOGGLE ICON */
/* modifications to Themebau modification at 25501 */
/* Thickness of line */

.navbar-toggle>span {
	height: 1.5px;
	background-color: #194262;
}

/* stop 3rd line extending on hover *//*
.navbar-toggle>span:nth-child(3) {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}
.navbar-toggle:hover {
	color: var(--color-accent);
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}




/* CONTAINER wider padding on desktop
--------------------------------------*/
/* modifications to original Themebau */

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
  padding-right: 35px;
  padding-left: 35px;
  max-width: 1170px;
  width: 100%;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
}

/* CONTAINER narrower padding on mobile
--------------------------------------*/
/* modifications to original Themebau */
@media (max-width: 619.98px) {
  .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media (max-width:619.98px) {
.navbar-top .container,.navbar-top .container-fluid {
	padding-right: 20px;
	padding-left: 20px;
}
}

/* 1280px images width max + 20px padding R+L=40px */



/* Gallery-item zoom CANCEL for SAFARI - 
IMPORTANT TO REMOVE WHEN USING 'show-on-scroll' as Safari refuses to recalc srcset candidate image
Themebau modification
from line 26313 -----------------*/


.gallery-item:focus img, .gallery-item:hover img {
	-webkit-transform: none !important;
	-ms-transform:none !important;
	transform:none !important;
}


/* Ensure the media fills the hero */
#hero picture, #hero img { display: block; width: 100%; height: auto; }

/* Stop any transform after reveal, Safari quirk */
#hero.show-on-scroll, #hero.show-on-scroll-ready, #hero.show-on-scroll-ready * { transform: none !important; }



/*-----------
FOOTER
-------------*/


footer h6 {
	letter-spacing: 0.04rem;
	color:var(--blondin-blue)!important
}


/* Base footer links */
footer a {
	color: var(--bs-body-color);
}
footer a:hover {
	color: var(--bs-body-color);
text-decoration: underline
}

/* Footer nav link typography */
footer .nav .nav-link {
	color: var(--bs-body-color);
	letter-spacing: 0.03rem;
	line-height: 2;
}
footer .nav a:hover {
	color: var(--bs-body-color);
text-decoration: underline
}


footer a.nav-link:hover {
	color: var(--bs-body-color);
text-decoration: underline
}

/* SOCIAL ICONS 
	modification of Themebau modification at line 22303*/

footer .nav-social .nav-link {
 margin:1rem 0 0 0;
}


/* Lower band horizontal spacing (sm and up) */
@media (min-width: 576px) {
  .footer .border-top .nav .nav-item + .nav-item { margin-left: 1rem; }
}


/*------------------------
BIOGRAPHY PAGE
-----------------------------*/







/* --------------------------
BIOGRAPHY ACCORDION STYLES
----------------------------- */
	/* line 5474 */

#bioAccordion.accordion-flush .accordion-item {
  background-color: inherit;
  border: none;
  border-radius: 0;
}

#bioAccordion.accordion-flush .accordion-item + .accordion-item {
  margin-top: 1rem; /* spacing between items */
}

#bioAccordion .accordion-button {
  padding: 1rem 0;
  color: var(--color-link);
  background-color: inherit;
  box-shadow: none;
  border: none;
  font-weight: 500;
  transition: color 0.2s ease;
}

#bioAccordion .accordion-button:hover {
  color: var(--color-link-hover);
}

#bioAccordion .accordion-button:focus {
  color: var(--color-link-hover);
  border-color: #6a4b42;
  box-shadow: none;
}

#bioAccordion .accordion-button::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236a4b42'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transition: transform 0.2s;
}

#bioAccordion .accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23CAA52C'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}

#bioAccordion .accordion-button:not(.collapsed) {
  color: var(--color-nav-active);
  background-color: none; 
  box-shadow: none;
}

#bioAccordion .accordion-body {
  padding: 1rem 0;
}

/* --------------------------
DESKTOP OVERRIDE (≥992px)
----------------------------- */
@media (min-width: 992px) {
  #bioAccordion .accordion-button {
    cursor: default;
    pointer-events: none;
    background-color: transparent;
  }

  #bioAccordion .accordion-button::after {
    display: none; /* hide arrow icon */
  }

  #bioAccordion .accordion-collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }

  #bioAccordion .accordion-item {
    border: none;
  }

  #bioAccordion.accordion-flush .accordion-item + .accordion-item {
    margin-top: 2rem;
  }
	
 #bioAccordion .accordion-button {
	font-size: 1.5rem;
	margin-bottom:0!important;
	padding-bottom:0!important;
}
	
}
/* --------------------------
ARCHIVE ACCORDION STYLES
----------------------------- */

/* ------------
ACCORDION 
--------------*/
/* line 5474 */
.accordion-button {
	padding: 1rem 0;
	color:var(--color-link);
	background-color: inherit;
}
.accordion-button:hover {
	color:var(--color-link-hover);
}
.accordion-button:focus {
	color:var(--color-link-hover);
	border-color: #6a4b42;
}
.accordion-button:not(.collapsed) {
	color:var(--color-nav-active);
	background-color: inherit;
	-webkit-box-shadow: inset 0 -1px 0 rgba(106, 75, 66,.125);
	box-shadow: inset 0 -1px 0 rgba(106, 75, 66,.125)
}
.accordion-button:not(.collapsed)::after {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23CAA52C'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
	-webkit-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg)
}
.accordion-button::after {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236a4b42'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}


.accordion-item {
	background-color: inherit;
	border: 1px solid rgba(106, 75, 66,.125)
}


.accordion-body {
	padding: 1rem 1rem
}






/*--------------
LANGUAGE SWITCHER
-------------*/


.lang-switcher header {  position: relative}
.lang-switcher ul {  position: absolute}
.lang-switcher .nav-item a {font-weight: 600; text-transform: uppercase; font-size: 0.55rem; letter-spacing: 0.01rem;color:#93999D;display: inline-block; /* needed for transform */transform: scaleY(1.3); /* 1.5 times taller */ }
.lang-switcher .nav-item a:hover {color:#CAA52C}
.lang-switcher li{font-family: var(--bs-font-sans-serif)}
.lang-switcher li.line{font-size: 1.15rem; padding-top:3px;color:#93999D;}
.lang-switcher .nav-item a.active {color:#4A4A4A; }
.lang-switcher .nav-item a.active:hover {color:#4A4A4A}

.lang-navbar .nav-link {
	padding:4px 15px}
@media (min-width:828px) {
.lang-navbar .nav-link {
	padding:4px 6px}
	}
.lang-navbar {
  position: fixed;
  top: 0;
  width: 100%;
  height: 30px;              /* Adjust height as needed */
  line-height: 20px;         /* Vertically centre text */
  background-color: transparent; 
  z-index: 1050;           
}
.lang-navbar::before {
	transform: translateY(-100%);/* to behave as .navbar-top and slide .lang-navbar out of view */top: 30px; /* below secondary */
  width: 100%;
  height: 56px; /* adjust if different */
  line-height: 56px;
  background-color: #F1EAD9; /* or your navbar background */
  z-index: 1040;
  transition: transform 0.3s ease;
}
.navbar-top {
  position: fixed !important;
  z-index: 1040;            /* Below secondary navbar */
}

/* Push page content down so it’s not hidden behind navbars */
body {
  padding-top:86px;        /* 30px secondary + 90px main navbar height */
}

/* Hide navbars when scrolling down to match Themebau .navbar-top behaviour */
.lang-navbar.navbar-hidden {
  transform: translateY(-100%);
}





/* 
anchor links fix
---------------------
*/
/* Applies to all anchor targets with IDs */
[id] {
  scroll-margin-top: 72px; 
}

html {
  scroll-behavior: smooth;
}



/*--------------
ISOTOPE
-------------*/
.isotope-options::before {
	border-top: none
}





/* LAZY LOADING IMAGES --*/

  .lazy-fade {
    opacity: 0;
    transition: opacity 0.6s ease;
  }

  .lazy-fade.loaded {
    opacity: 1;
  }

noscript .lazy-fade {
  opacity: 1;
}





/* ABOUT JEAN-LOUIS AUTHOR SECTION  --*/

.name { font-style: italic;
color: var(--bs-body-color);
}

#about-author .border-bottom {
	border-bottom: 2px solid #ccc!important;
}





/* sloped SECTION DIVIDER  --*//*

.sloped-top,
    .sloped-bottom {
      display: block;
      width: 100%;
      height: 50px;
    }

.sloped-top polygon,
.sloped-bottom polygon {
      fill:#F9F6EF; /* same as section background *//*
    }

.sloped-bottom {
      transform: rotate(180deg);
    }

/* Match fills to backgrounds *//*
.bg-white .sloped-bottom polygon,
.bg-white + .sloped-top polygon {
  fill: #FFFFFF;
}

.bg-light .sloped-bottom polygon,
.bg-light + .sloped-top polygon {
  fill: #F8F9FA;
}




/* Sloped Section Divider */
.sloped-top,
.sloped-bottom {
  display: block;
  width: 100%;
  height: 50px;
  line-height: 0;
}

.sloped-top polygon,
.sloped-bottom polygon {
  fill: #F9F6EF; /* background of the .bg-light section */
}

.sloped-bottom {
  transform: rotate(180deg);
}

.bg-white {
  margin-top: -50px; /* pull white section up to meet slope */
  padding-top: 110px; /* account for 50px overlap + regular spacing */
}






/* ROPE */
.twisted-rope-divider {
  width: 100%;
  height: auto;
  display: block;
  margin: 2em 0;
}





/* --
/* SLIDES / CAROUSAL */
.carousel { overflow: hidden; padding-bottom: 4rem; }
.carousel-caption { top: 100%; }
.carousel-inner { overflow: visible; }
.carousel-control-next, .carousel-control-prev, .carousel-indicators { bottom: 4rem; }



/*-- CAROUSAL  */
/* ==== Fancyapps Carousel Custom Styling ==== */

#myCarousel {
  --f-carousel-gap: 10px;
  --f-arrow-svg-stroke-width: 2.5;
  --f-arrow-bg: transparent;
  --f-button-hover-bg: var(--blondin-blue);
  --f-arrow-hover-bg: var(--blondin-blue-hover);
  --f-arrow-color: #fff;
  --f-arrow-bg: rgba(0, 0, 0, 0.1);
  --f-carousel__viewport: transparent;

  height: auto;
  max-height: calc(100vh - 40px);
  overflow: visible;
  padding: 1rem 0;
}

/* Slide layout */
#myCarousel .f-carousel__slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content:center !important;
  background: transparent !important;
  cursor: pointer;
  height: auto;
  text-align: center;
  overflow: visible;
  max-height: 100vh;
}

/* Image styling */
.f-carousel__slide img {
  max-height:70vh;
  max-width: 100%;
  height: auto;
  width: auto;
  object-fit: contain;
  display: block;
  margin-bottom: 0.5rem;
}

/* Caption styling */
.carousel-caption-below {
  margin-top: 8px;
  font-size: 1rem;
  font-family: inherit;
  font-weight: inherit;
  line-height: 1.4;
  color: inherit;
  padding: 4px 0;
  text-align: center;
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* Responsive adjustments */
@media (max-width: 767px) {
  #myCarousel {
    height: auto !important;
    max-height: 100vh !important;
  }

  #myCarousel .f-carousel__slide {
    height: auto;
  }

  #myCarousel .f-carousel__slide img {
    max-height: 60vh;
    width: auto;
    object-fit: contain;
  }

  .f-carousel__arrow {
    padding: 12px;
  }

  .carousel-caption-below {
    font-size: 0.9rem;
    padding: 3px 8px;
  }
}



/* Container for dots */
.f-carousel__dots {
  display: flex;
  justify-content: center;
  margin-top: 8px;
  gap: 8px;
  padding: 0;
  background: transparent !important;
  border: none !important;
}

/* Each individual dot */
.f-carousel__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: transparent;  /* or colour */
	border: 1.5px solid #a7843a;
  cursor: pointer;
transition: border-color 0.3s ease, background-color 0.3s ease;
  box-sizing: border-box;   /* Include border in size */
  padding: 0;
  margin: 0;
}

/* Active dot */
.f-carousel__dot.is-selected {
background: var(--blondin-blue, #0055aa);  /* Filled dot when active */
  border-color: var(--blondin-blue, #0055aa);
}







/* -------------------------------
FORCE FOOTER TO SIT AT BOTTOM ON SHORT PAGES
-------------------------------*/

/* Make footer always sit at the bottom of the viewport */
body#contact , body#contact {
  height: 100%;
  margin: 0;
  padding: 0;
}

#contact .content-wrap {
  min-height: calc(100vh - 200px); /* adjust if needed */
  padding-top: 90px; /* offset for fixed navbar */
 background-color: var(--bs-body-bg);
}

#contact .footer {
  background-color: var(--bs-body-bg-light)!important;
}




/* -------------------------------
BIO TOGGLE LINKS - SHORT/LONG VERS.
-------------------------------*/

.bio-toggle-links a {
    cursor: pointer;
    text-decoration: none;
    color: var(--color-link, #007bff);
    margin-right: 1em;
    font-weight: 500;
  }
  .bio-toggle-links a.active {
    font-weight: 700;
    text-decoration: underline;
    color: var(--color-link-hover, #0056b3);
  }



/* READ MORE TOGGLE LINK */

.link-primary {
	color:var(--inline-page-color-link);
}
.link-primary:focus, .link-primary:hover,.link-primary:active,.link-primary:focus-visible {
	color:var(--inline-page-color-link-hover);
}
  /* keep it in the normal (gold) state when expanded */
.read-more-link[aria-expanded="true"] {
  color: var(--inline-page-color-link) !important;
}



/*------------------------
To TOP 
-------------------------*/

#toTop {

  align-items: center;
  justify-content: center;
  z-index: 999;
  text-decoration: none;
  cursor: pointer;
}

#toTop i {
  font-size: 20px;
  color:var(--inline-page-color-link);
  margin: 11px 0 0 0;
  padding: 0;
  display: block;
  line-height: 1;
  vertical-align: middle;
}

#toTop:hover i,
#toTop:focus i {
  color:var(--blondin-blue)
}


#toTop {
    display: none;
    position: fixed;
    bottom: 58px;
    right: 30px;
    opacity: .7;
    filter: alpha(opacity=70);
    text-align: center;
    overflow: hidden;
  width: 48px;
  height: 48px;
   color:var(--inline-page-color-link);
	border: 1px solid #a7843a;
	border-radius: 0.75rem;
	background-color: var(--bs-body-bg-light)!important;
}
#toTop:active, 
#toTop:focus, 
#toTop:hover {
    opacity:1;
    filter: alpha(opacity=100);
}


.myth {
  colour: var(--blondin-blue)!important;
}



.closing-quote {
  colour: var(--blondin-blue);
}




/* <H1> YELLOW STAR  --*/

.single-star {
  position: relative;
  top: -10px; /* moves whole SVG up 2 pixels */
}



/* Full width hero */
#hero {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}



/* FANCYBOX GALLERY  */

/* Legacy Fancybox overlay colour and opacity 
applied to affect only Gallery (not any other site use of fancybox)
by using 'data-base-class="fancybox-gallery"' on HTML*/
.fancybox-gallery .fancybox-bg { background:#F1EAD9; }
.fancybox-gallery .fancybox-toolbar .fancybox-button { color: #fff; }  /* or #fff if you prefer white */
.fancybox-gallery.fancybox-is-open .fancybox-bg { opacity:0.95; }

.fancybox-gallery .fancybox-toolbar .fancybox-button--zoom{ 
  display: none !important; 
}

/* Only for the masonry row */
.row.js-masonry { display: block; }
.js-item { margin-bottom: 16px; }

