/**
 * Theme Name:     Twenty Twenty Child
 * Author:         the WordPress team
 * Template:       twentytwenty
 * Text Domain:	   twenty-twenty-child
 * Description:    Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.
 */

/*

GWD Simple CSS Reset, v2.0

by Eric Girouard, 2014-2021

Originally based on http://meyerweb.com/eric/tools/css/reset/ (version 2)


Use this CSS Reset if using Normalize's (or Modern CSS Reset's) "opinionated defaults" requires you to write too many overrides (such as: p {margin: 0; padding: 0;} ).


By default elements are made position: relative; to make positioning of absolutely positioned elements simpler.


*/


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, sub, sup, 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,
main, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;

vertical-align: baseline;

}

/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure,

footer, header, hgroup, main, menu, nav, section {

display: block;

}


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;

}


*,

*::before,

*::after {

  box-sizing: border-box;

}

/* "border-box" calculates the width and height of an HTML element including the padding and the border. Opposite of the traditional CSS Box Model of "content-box" */



/*----------CSS RESET ENDS HERE---------*/

/*-------------header start here-------------------*/

#site-header{
background-color: white !important;
}

nav a {
font-family: 'Nunito', sans-serif;
font-size: 1rem;
}

body.home {
  background-image: url("https://maryamabbasi.com/wp-content/uploads/2025/11/cabot-trail-gradient-background-scaled.jpg");
  background-color: #cccccc;
  background-size: cover;
}

body:not(.overlay-header) .primary-menu > li > a{
color: black !important;
letter-spacing: -0.015em;
text-align: left;
text-transform: uppercase !important; 
font-family: sans-serif !important;
font-size: 1rem !important;
}

body p {
font-family: 'Spinnaker', sans-serif;
}
.entry-content #blog p {
	font-size: 2rem;
	margin-top: 1rem;
}
#blog p{
font-family:"handlee";
}

.about-hopewell-rocks {
margin-top: 50px;
}

.about-hopewell-rocks h2{
font-family:"handlee";
font-size: 2rem;
}

.about-hopewell-rocks p{
font-family:"handlee";
font-size: 2rem;
}

.header-titles .site-logo {
margin: 1rem 0 0 2.4rem;
background-color: white;
}

h2.entry-title {
font-size: 6.4rem;
font-family: 'Lobster', cursive;
}


.header-titles-wrapper {
justify-content: flex-start;
padding-left: 0;
text-align: left;
background-color: white;
padding: 1%;
}

.header-inner {
align-items: center;
display: flex;
justify-content: space-between;
padding: 2.8rem 0;
background-color: white;
}

.header-navigation-wrapper {
	align-items: center;
	display: flex;
	background-color: white;
	padding: 2%;
}
.post-meta {
display: none;
}

.post-inner {
    padding-top: 0;
}
.primary-menu-wrapper {
	display: block;
	width: 100%;
	background-color: white;
}

.singular .entry-header {
	padding: 8rem 0;
	display: none;
}

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

.header-navigation-wrapper {
  align-items: center;
  display: flex;
  background-color: white;
  padding: 2%;
}

.footer-top-visible .footer-nav-widgets-wrapper{
	margin-top: 8rem;
	background-color: #1E324B;
}


/*----MENU----*/
.primary-menu-wrapper {
	display: block;
	width: 100%;
	background-color: white;
	font-family: sans-serif;
	letter-spacing:0.05rem;
}

.primary-menu-wrapper ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-flex;
	gap: 2rem;
}

.primary-menu-wrapper a {
  text-decoration: none;
  color: black;
  font-family: 'Nunito', sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
  transition: color 0.3s ease;
}

.primary-menu-wrapper a:hover {
  color: teal;
}

/* Dropdown styles */
.dropdown {
  position: relative;
}

.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: white;
  border: 1px solid #ddd;
  border-radius: 5px;
  list-style: none;
  padding: 0.5rem 0;
  margin: 0;
  min-width: 120px;
  text-align: left;
}

.dropdown-menu li {
  padding: 0;
}

.dropdown-menu a {
  display: block;
  padding: 0.5rem 1rem;
  color: black;
  text-transform: none;
}

.dropdown-menu a:hover {
  background-color: #f0f0f0;
}

/* Show dropdown on hover */
.dropdown:hover .dropdown-menu {
  display: block;
}

.footer-widgets a:where(:not(.wp-block-button__link)){
	color: white !important;
}

.widgettitle {
	color: white;
}

/*HOMEPAGE BANNER*/

#home-title {
	margin-top: 20px;
	font-family: "Libre Bodoni";
    color: #ffffff;
}

#home-title h1 {
    font-family: "libre bodoni";
	font-size: 6rem;
    color: #ffffff;
	text-align: center;
}

/*NEW BRUNSWICK*/

.nb-banner {
  min-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
}

.nb-banner img {
  min-width: 100vw !important;
  height: auto;
  display: block;
  margin: 0 !important;
}

.nb-banner h1 {
    margin-top: -15rem;
    margin-left: 25%;
	margin-bottom: 10rem;
    color: white;
    font-family: "libre bodoni";
    font-size: 6rem;
}

.grid-container-nb-intro {
	display: grid;
	grid-template-columns: auto auto;
	margin: auto auto;
	margin-top: 30px;
	margin-bottom: 30px;
}

.grid-container-nb-intro div img{
	padding: 0%;
	width: 80%;
	margin-right: 0;
}

.grid-container-nb-intro div p {
	font-family: "Handlee", sans-serif;
}

.grid-container-4 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* flexible columns */
  gap: 10px;
  align-items: start; /* aligns all images to the top */
  margin-top: 6rem;
}

.nb-pictures {
  background-color: white;
  padding: 6px; /* white border */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  overflow: hidden;
  width: 130%; /* make all items fill their grid cell */
}

.nb-pictures.vertical {
  width: 90%; /* slightly smaller for verticals */
  margin: 0 auto; /* center in grid cell */
}

.nb-pictures.camera {
	margin-left: -70px;
	margin-top: 50px;
}

.nb-pictures.seaweed {
	margin-left: 30px;
	margin-top: -100px;
}
.nb-pictures.rock {
	margin-left: 70px;
	margin-top: -50px;
}

.nb-pictures.low-tide {
	width: 30%;
	margin-left: 75%;
}

/* Rotations for fun */
.nb-pictures.camera { transform: rotate(-10deg); }
.nb-pictures.seaweed { transform: rotate(5deg); }
.nb-pictures.rock { transform: rotate(-5deg); }
.nb-pictures.low-tide { transform: rotate(10deg); }

/* Images inside each div */
.nb-pictures img {
  display: block;
  width: 100%;
  height: auto;
}

.about-hopewell-rocks {
  width: 20%;        /* take up left half of the screen */
  float: left;       /* move it to the left side */
  padding-right: 20px; /* optional: space between text and right side */
  box-sizing: border-box; /* make padding included in width */
  margin-left: 50px;
  margin-top: -200px;
}

.about-hopewell-rocks h2 {
  margin-bottom: 1rem; /* adds space under heading */
  word-wrap: break-word;
}

.about-hopewell-rocks p {
  margin-bottom: 1rem; /* adds space between paragraphs */
}

/*end of nb*/

/*NOVA SCOTIA*/
.ns-banner {
  min-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ns-banner img {
  min-width: 100vw !important;
  height: auto;
  display: block;
  margin: 0 !important;
}

.ns-banner h1 {
    margin-top: -15rem;
    margin-left: 33%;
	margin-bottom: 20rem;
    color: white;
    font-family: "libre bodoni";
    font-size: 6rem;
}

/*end of ns*/

/*PEI*/
.pe-banner {
  min-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
}

.pe-banner img {
  min-width: 100vw !important;
  height: auto;
  display: block;
  margin: 0 !important;
}

.pe-banner h1 {
    margin-top: -15rem;
    margin-left: 20%;
	margin-bottom: 20rem;
    color: white;
    font-family: "libre bodoni";
    font-size: 6rem;
}
/*end of pei*/

.grid-container-2{
	display: grid;
	grid-template-columns: auto auto;
	gap: 50px;
	margin: auto auto;
}

.grid-container-2 div{
	background-color: rgba(255, 255, 255, 0.8);
	padding: 10%;
}

.grid-container-2 h2{
	color: black;
	font-family: 'Lobster';
	margin: 0px;
	margin-bottom: 5%;
}

.grid-container-2 p {
	font-family: 'Handlee';
	font-size: 1rem;
	margin-bottom: 5%;
}

.grid-container-2 a {
	color: teal;
	text-transform: uppercase;
}

.entry-content p, .entry-content li {
	line-height: 1.476;
	color: black;
	font-size: 1rem;
}

p ul li {
	font-family: 'Handlee';
	font-size: 1rem;
    margin-bottom: 5%;
}

#about ul li {
	font-family: 'Handlee';
	list-style: bullets;
}

.grid-container-2 a {
    background-color: #63A9C7;
    padding: 10px;
    text-transform: uppercase;
    color: white;
    margin-top: 10px;
	text-decoration: none;
}

.grid-container-2 div #about {
	margin-top: 10px;
}

.grid-container-2 a:hover {
	background-color: #ADE5EF;
}
.grid-container-2 a div:hover {
	transform: scale(1.2);
	transition: transform 0.3s ease;
}

.grid-container-3 {
	display: grid;
	grid-template-columns: auto auto auto;
	gap: 20px;
}

.grid-container-3 div {
	background-color: white;
	width: 1/3;
}

.grid-container-3 div img {
	margin-bottom: 30px;
}

.grid-container-3 div h2 {
	font-size: 3rem;
}


.grid-container-3 a {
	color: black;
}

.grid-container-3 p {
	font-family: 'Handlee';
	font-size: 1rem;
}

/* Main container for each image */
.container {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 10px;
}

/* The image itself */
.polaroid-image {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #ccc;
	padding: 6px;
	background-color: white;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.7);
	transition: transform 0.3s ease; /* smooth zoom in + out */
}

.polaroid-image.nb {
	transform: rotate(10deg);
}
.polaroid-image.pe {
	transform: rotate(5deg);
}
.polaroid-image.ns {
	transform: rotate(-5deg);
}

.polaroid-image span.caption {
    font-size: 24px;
    font-family: 'handlee';
    text-align: center;
    display: block;
    margin-top: 10px;
    font-weight: 700;	
}

.polaroid-image a {
	text-decoration: none;
}

.polaroid-image:hover {
	transform: scale(1.2);
	transition: transform 0.3s ease;
}

/* The overlay effect */
.overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	opacity: 0;
	transition: 0.5s ease;
	background-color: rgba(0, 128, 128, 0.6);
}

/* Fade in overlay on hover */
.container:hover .overlay {
  opacity: 1;
}

/* Text that appears on hover */
.text {
	background: transparent !important;
	color: white;
	font-size: 1.5rem;
	font-weight: 600;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: opacity 0.5s ease;
	text-align: center;
	padding: 0;
	opacity: 0;
	z-index: 2;
}

@media screen and (max-width: 500px) {
	
	.header-navigation-wrapper {
		align-items: center;
		display: flex;
		background-color: white;
		padding: 2%;
		display: block;
	}
.entry-content h1, .entry-content h2, .entry-content h3 {
display: none;
}
	
.entry-content p, .entry-content li {
margin-top: 3rem;
}
	
.header-inner {
		align-items: center;
		display: flex;
		justify-content: space-between;
		padding: 2.8rem 0;
		background-color: white;
		width: 62%;
	}
	
.ns-banner.pe-banner.nb-banner h1 {
		font-size: 2rem;
	}
	
.grid-container-2 {
		display: block;
		margin-bottom: 20px;
	}
	
.grid-container-2 #about {
		margin-bottom: 20px;
	}
	
	#blog p {
		margin-top: 2rem;
	}
div #blog p {
  margin: 2rem;
}
	
h2.entry-title {
		font-size: 3rem;}
	
.grid-container-3 {
		display: block;
	}
	
	.polaroid-image {
		transform: none !important;
		margin-bottom: 30px;
	}
	
	.grid-container-4 {
		display: none;
	}
	.grid-container-4 .nb-pictures img {
		display: none;
	}
	.grid-container-4 .nb-pictures .low-tide img {
		display: none;
	}
	
	.grid-container-4 .nb-pictures div {
		display: none;
	}
}

@media screen and (max-width: 1000px) {
	.primary-menu-wrapper {
		display: none;
	}
	
	 .nb-banner h1 {
		font-size: 4rem;
	}
	
	#home-title h1 {
		font-size: 4rem;
	}
	
	.grid-container-4 {
		display: none;
	}
}