z/*
Theme Name: Strawberries Theme
Theme URI: https://sarahstrawberry.com/
Author: Sarah
Author URI: https://sarahstrawberry.com
Description: A modern block theme inspired by strawberries.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: strawberries-theme
*/

/**
1. Normalize
2. Theme Specific CSS
*/

/* 1. Normalize */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
       ========================================================================== */

/**
     * Remove the margin in all browsers.
     */

body {
  margin: 0;
}

/**
     * Render the `main` element consistently in IE.
     */

main {
  display: block;
  width: 100%;
}

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
       ========================================================================== */

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
       ========================================================================== */

/**
     * Remove the gray background on active links in IE 10.
     */

a {
  background-color: transparent;
}

/**
     * 1. Remove the bottom border in Chrome 57-
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */

b,
strong {
  font-weight: bolder;
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
     * Add the correct font size in all browsers.
     */

small {
  font-size: 80%;
}

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
       ========================================================================== */

/**
     * Remove the border on images inside links in IE 10.
     */

img {
  border-style: none;
}

/* Forms
       ========================================================================== */

/**
     * 1. Change the font styles in all browsers.
     * 2. Remove the margin in Firefox and Safari.
     */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
     * Show the overflow in IE.
     * 1. Show the overflow in Edge.
     */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
     * Correct the inability to style clickable types in iOS and Safari.
     */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
     * Remove the inner border and padding in Firefox.
     */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
     * Restore the focus styles unset by the previous rule.
     */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
     * Correct the padding in Firefox.
     */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
     * Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */

progress {
  vertical-align: baseline;
}

/**
     * Remove the default vertical scrollbar in IE 10+.
     */

textarea {
  overflow: auto;
}

/**
     * 1. Add the correct box sizing in IE 10.
     * 2. Remove the padding in IE 10.
     */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
     * Remove the inner padding in Chrome and Safari on macOS.
     */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
       ========================================================================== */

/*
     * Add the correct display in Edge, IE 10+, and Firefox.
     */

details {
  display: block;
}

/*
     * Add the correct display in all browsers.
     */

summary {
  display: list-item;
}

/* Misc
       ========================================================================== */

/**
     * Add the correct display in IE 10+.
     */

template {
  display: none;
}

/**
     * Add the correct display in IE 10.
     */

[hidden] {
  display: none;
}

/* 2. Theme Specific CSS */

:root {
  /* Measurements */
  --strawberries-big-padding: 60px 0;
  --strawberries-mobile-padding: 20px 0;
  --strawberries-light-padding: 0 25px;
  --strawberries-content-width: 1290px;

  /* Colors */
  --color-red: #ee5a2f;
  --color-pink: #f3c3c7;
  --color-green: #b1ae77;
  --color-black: #3a3a3a;
  --color-white: #ffffff;
  --color-cream: #ece0d3;
  --color-blue: #799ee5;

  --strawberries-gray1: #7c7c7c;
  --strawberries-gray2: #f7f7f7;
  --strawberries-gray3: #dddddd;
  --strawberries-light-blue: #2a92d3;
  --strawberries-deep-blue: #213c4d;
  --strawberries-black-blue: #001e32;
  --strawberries-yellow: #cfaf07;

  --font-title: "Young Serif";
  --font-body: "Montserrat Alternates", sans-serif;
  --font-button: "Parisienne", serif;
  --font-size-base: 16px;
  --line-height-base: 1.6;
}

@font-face {
  font-family: "Young Serif";
  src: url("fonts/YoungSerif-Regular.otf");
  font-weight: normal;
}

body {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-black);
  background-color: var(--color-white) !important;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-title);
  /* font-weight: 700;
      font-style: italic; */
  color: var(--color-red);
}

h1 {
  font-size: 66px;
  line-height: 70px;
}
h2 {
  font-size: 40px;
  line-height: 4rem;
  font-weight: bold;
  text-transform: uppercase;
}
h3 {
  font-size: 36px;
  line-height: 3.6rem;
  font-weight: bold;
}
h4 {
  font-size: 28px;
  line-height: 2.8rem;
  font-weight: bold;
}
h5 {
  font-size: 22px;
  line-height: 2.2rem;
  font-weight: bold;
}
p {
  font-size: 15px;
  line-height: 1.7rem;
}
a {
  color: var(--color-black);
  text-decoration: none;
}

a:hover {
  color: var(--color-black);
}

img {
  max-width: 100%;
  height: auto;
}

/* Containers */

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 575px) {
  .container {
    padding: var(--strawberries-light-padding);
  }
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

/************** HOME PAGE *****************/

/* Top Bar Section */
.top-bar {
  background: #ffffff;
  color: #000000;
  padding: 15px 0;
}
.top-bar .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.searchbox input[type="text"] {
  padding: 7px 10px;
  border: 1px solid #c6c6c6;
  border-top-left-radius: 100px;
  border-bottom-left-radius: 100px;
}
.searchbox input[type="submit"] {
  padding: 9px 10px;
  background: #000000;
  color: #ffffff;
  border: none;
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
}
@media (max-width: 768px) {
  .searchbox {
    display: none;
  }
  .top-bar .container {
    justify-content: center;
  }
}

/* Main Menu */

.menu-area {
  background: var(--color-white);
}
.main-menu {
  height: 55px;
  display: flex;
  justify-content: center;
}
.main-menu ul {
  margin: 0;
  padding-left: 0;
  z-index: 2;
}
.main-menu ul li {
  display: inline-block;
  line-height: 55px;
  position: relative;
}
.main-menu ul li.current_page_item > a {
  font-weight: bold;
}
.main-menu ul li a {
  color: #000000;
  padding: 0 30px;
  text-decoration: none;
  display: block;
}
.main-menu ul li a:hover,
.main-menu ul li a:active {
  color: var(--strawberries-gray1);
  transition: 0.5s all;
}
.main-menu ul li a:focus + ul {
  display: block;
}
.main-menu li.menu-item-has-children::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 6px);
  width: 0px;
  height: 0px;
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #000000;
  border-left: 6px solid transparent;
}
.main-menu ul.sub-menu {
  position: absolute;
  padding-left: 0;
  background-color: var(--color-cream);
  z-index: 2;
  text-align: left;
  display: none;
  color: var(--color-black);
}
.main-menu ul .menu-item-has-children:hover > ul,
.main-menu ul .menu-item-has-children:focus + ul {
  display: block;
}
.main-menu ul.sub-menu li {
  width: max-content;
  color: var(--strawberries-gray1);
}
.main-menu ul.sub-menu a {
  color: var(--color-black);
}
.menu-icon,
.check-button {
  cursor: pointer;
  display: none;
}
.menu-icon .bar1,
.menu-icon .bar2,
.menu-icon .bar3 {
  width: 28px;
  height: 3px;
  background-color: #333;
  margin: 5px 0;
  transition: 0.4s;
}
@media (max-width: 767px) {
  .menu-icon,
  .check-button {
    display: block;
  }
  .check-button {
    border: none;
    background: transparent;
    height: 55px;
  }
  .main-menu ul {
    position: absolute;
    width: 100%;
    background: var(--color-cream);
    left: -999px;
    text-align: left;
    transition: all cubic-bezier(0.79, 0.14, 0.15, 0.86) 0.5s;
    padding: 0;
    margin: 0;
    z-index: 2;
  }
  .main-menu ul:not(.sub-menu) {
    margin-top: 55px;
  }
  .main-menu ul li {
    display: block;
    margin: 15px 0;
    line-height: 30px;
  }
  .main-menu ul li a {
    color: var(--color-black);
  }
  .main-menu ul.sub-menu {
    position: relative;
    top: 0;
    margin-left: 30px;
    display: block;
    width: auto;
  }
  .main-menu ul.sub-menu a {
    color: var(--strawberries-gray1);
  }
  .show-dropdown {
    left: 0 !important;
  }
  .animate-button .bar1 {
    -webkit-transform: rotate(-45deg) translate(-4px, 4px);
    transform: rotate(-45deg) translate(-4px, 4px);
  }
  .animate-button .bar2 {
    opacity: 0;
  }
  .animate-button .bar3 {
    -webkit-transform: rotate(45deg) translate(-7px, -7px);
    transform: rotate(45deg) translate(-7px, -7px);
  }
}

/* Sidebar Positioning */
.primary-single-post {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
  gap: 2%;
}

.main-single-post {
  width: 70%;
}

/* Sidebar Container */
.sidebar {
  width: 20%;
  padding: 20px;
  background: #fff;
  border-radius: 8px;
  margin-left: 30px;
}

.sidebar-inner-wrap {
  display: flex;
  flex-direction: column;
  gap: 30px; /* Space between widgets */
}

.sidebar-thumbnail {
  height: 8vh;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  margin-right: 1vh;
  display: grid;
  align-content: center;
  margin-bottom: 0.2vh;
}

/* Sidebar Titles */
.sidebar-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
  color: #333;
  padding-bottom: 5px;
  background: linear-gradient(
    180deg,
    var(--color-white) 0%,
    var(--color-white) 50%,
    var(--color-pink) 50%,
    var(--color-pink) 80%,
    var(--color-white) 80%
  );
}

/* Responsive Design */
@media screen and (max-width: 786px) {
  .primary-single-post {
    background-color: var(--color-white);
    flex-direction: column; /* Stack main content and sidebar vertically */
  }

  .main-single-post {
    width: 100%;
    order: 1;
  }

  /* Sidebar Container */
  .sidebar {
    order: 2; /* Move sidebar to the bottom */
    margin-top: 20px; /* Add space between main content and sidebar */
  }
}

/* About Section */
.author-sidebar {
  text-align: center;
}

.author-sidebar img {
  display: inline-block; /* Ensure the avatar is centered properly */
  border-radius: 50%; /* Make the avatar circular */
  width: 80px; /* Set a fixed width */
  height: 80px; /* Set a fixed height */
  object-fit: cover; /* Ensure the image fits well */
}

.sidebar-content p {
  font-size: 14px;
  color: #555;
  line-height: 1.6;
  text-align: center;
}

/* Latest Posts Section */
.latest-posts {
  list-style: none;
  padding: 0;
  margin: 0;
}

.latest-posts li {
  display: grid; /* Use flexbox for layout */
  align-items: center; /* Align thumbnail and title vertically */
  margin-bottom: 1.8vh; /* Add spacing between posts */
}

.latest-posts li a {
  display: flex;
  flex-direction: column;
  text-decoration: none; /* Remove underline */
  color: #333; /* Set text color */
}

.latest-posts li a:hover {
  color: var(--color-red); /* Change text color on hover */
}

.latest-posts li img {
  /* width: 80px; Set thumbnail width */
  height: 8.5vh; /* Set thumbnail height */
  object-fit: cover; /* Ensure the image fits well */
  border-radius: 8px; /* Add rounded corners */
}

.latest-posts li span {
  font-size: 1vh; /* Set font size for titles */
  line-height: 1.4; /* Adjust line height */
  font-weight: 600;
}

/* Browse by Category Section */
.categories-list {
  list-style: none; /* Remove default list styling */
  padding: 0;
  margin: 0;
}

.categories-list li {
  margin-bottom: 10px; /* Add spacing between categories */
}

.categories-list a {
  text-decoration: none; /* Remove underline */
  color: #333; /* Default text color */
  font-size: 14px; /* Font size */
  font-weight: 400; /* Normal font weight */
  display: block; /* Make the link fill the entire list item */
  padding: 8px 12px; /* Add padding for better clickability */
  border-radius: 4px; /* Rounded corners */
  transition: all 0.3s ease; /* Smooth transition for hover effects */
}

.categories-list a:hover {
  color: var(--color-white); /* Darker text color on hover */
  background-color: var(--color-pink); /* Light background on hover */
  transform: translateX(5px); /* Slight shift to the right on hover */
}

/* Sidebar Promo Image Styling */
.sidebar-accent-image {
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  transition: transform 0.3s ease;
}

.sidebar-accent-image:hover {
  transform: translateY(-3px);
}

.accent-image {
  width: 20vh;
  height: auto;
  display: block;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .sidebar-accent-image {
    margin: 20px 0 0;
  }
}

/* Search Box Section */
.search-form {
  display: flex;
  align-items: center;
  gap: 10px;
}

.search-field {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 14px;
}

.search-submit {
  padding: 10px 15px;
  background: #ff6f61;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
}

.search-submit:hover {
  background: #e65a50;
}

/* Responsive Sidebar */
@media (max-width: 768px) {
  .primary .sidebar {
    flex-direction: column; /* Stack main content and sidebar vertically */
  }

  .main,
  .sidebar {
    width: 100%; /* Full width on small screens */
    margin-left: 0; /* Remove margin */
  }

  .sidebar {
    margin-top: 30px; /* Add space between main content and sidebar */
  }
}

@media (max-width: 480px) {
  .sidebar {
    padding: 15px; /* Reduce padding for mobile */
  }

  .widget-title {
    font-size: 16px; /* Smaller widget titles for mobile */
  }

  .sidebar-widget p {
    font-size: 13px; /* Smaller font size for mobile */
  }

  .latest-posts img {
    width: 40px; /* Smaller thumbnails for mobile */
    height: 40px;
  }

  .latest-posts span {
    font-size: 12px; /* Smaller font size for mobile */
  }
  .categories-list a {
    font-size: 13px; /* Smaller font size for mobile */
  }

  .search-field {
    padding: 8px; /* Smaller padding for mobile */
    font-size: 13px;
  }

  .search-submit {
    padding: 8px 12px; /* Smaller padding for mobile */
    font-size: 13px;
  }
}

/* Social Icons */
.social-icons {
  display: flex;
  gap: 10px;
}

.social-icons a {
  color: #333;
  font-size: 20px;
  text-decoration: none;
}

.social-icons a:hover {
  color: #ff6f61;
}

/* Hero Section */

.hero {
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 30px 0px;
  background-image: linear-gradient(
    0deg,
    var(--color-pink) 15%,
    var(--color-white) 15%
  );
  background-size: cover;
  background-position: center center;
  text-align: center;
  overflow: scroll;
  border: 0px;
}

.hero-container {
  display: grid;
  grid-auto-rows: minmax(min-content, max-content);
  max-width: 1080px;
  grid-column-gap: 20px;
  grid-template-columns: 1fr 1fr;
  justify-items: center;
}

.hero-column {
  grid-template-columns: minmax(0, 1fr);
  z-index: 1;
  position: relative;
  display: grid;
  align-items: center;
}

mark {
  color: var(--color-white);
  background: var(--color-blue);
  box-decoration-break: clone;
  padding-top: 2%;
  padding-right: 4%;
  padding-bottom: 2%;
  padding-left: 4%;
  font-size: 1.25rem;
  font-family: var(--font-body);
  font-weight: 500;
}

/* Left Column: Image */
.hero-column-image {
  height: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px !important; /* Rounded corners for the image */
  aspect-ratio: 1 / 1 !important;
  object-fit: cover;
}

.hero-image-wrapper {
  display: flex;
  justify-content: center;
  margin: 20px;
  z-index: 0;
}

.hero-image {
  width: 80%;
  height: auto;
  display: block;
  transition: transform 0.3s ease;
  object-fit: cover;
}

.hero-image:hover {
  transform: scale(1.05); /* Zoom effect on hover */
}

/* Right Column: Content */
.hero-column-content {
  display: flex;
  align-items: center;
  /* justify-content: center; */
  justify-content: flex-start;
}

.hero-content {
  max-width: 800px;
  display: block;
  align-items: center;
}

.hero-title {
  font-size: 2rem;
  font-weight: bold;
  line-height: 50px;
  margin-bottom: 8px;
  animation: fadeIn 1.5s ease-in-out;
}

.hero-flag {
  font-family: var(--font-body);
  font-size: 1rem;
  margin-bottom: 20px;
  animation: fadeIn 1s ease-in-out;
  display: block;
}

.hero-description {
  color: var(--color-black);
  padding-bottom: 20px;
  padding-right: 15px;
}

.hero-cta {
  padding: 10px 15px;
  font-family: var(--font-button);
  font-size: 1.5rem;
  color: var(--color-white);
  background-color: #ff6f61;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  animation: fadeIn 1s ease-in-out;
}

.hero-cta:hover {
  color: var(--color-white);
  background-color: var(--color-red);
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Illustration Section */

/* Background Container */
.background-container {
  position: relative;
  top: 90px;
  right: 10px;
  left: 25px;
  width: 100%;
  z-index: 1;
}

/* Floating Images */
.floating-image {
  position: absolute;
  width: 16vw; /* Adjust size as needed */
  height: auto;
  opacity: 1; /* Adjust opacity for a subtle effect */
  pointer-events: none;
}

/* Individual Image Positioning */
.image-1 {
  bottom: 100%;
  right: 10%;
}
.image-2 {
  top: -5%;
  right: 5%;
  width: 7rem;
  z-index: 2;
}

/* Content Styling */
.content {
  position: relative;
  z-index: 1; /* Ensure content is above the floating images */
  text-align: center;
  padding-top: 50px;
}

/* Popular Posts */
.popular-wrapper {
  margin-top: 0;
  margin-bottom: 0;
  background-color: var(--color-pink);
}

.popular-subsection {
  width: 90%;
  /* max-width: 1200px; */
  padding-top: 20px;
  padding-bottom: 2.5%; /* Add space between subsections */
  background-color: var(--color-pink);
  margin: 0 auto;
}

.popular-subsection h3 {
  font-size: 1.8rem;
  margin: 15px 0px 10px;
  text-align: left;
  font-weight: 500;
  line-height: 1.7rem;
  grid-template-columns: (2, minmax(0, 1fr));
}

/* Latest Posts */
.latest-subsection {
  width: 90%;
  padding-top: 20px;
  padding-bottom: 5%; /* Add space between subsections */
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--color-white);
  margin-left: auto;
  margin-right: auto;
}

.latest-subsection h3 {
  font-size: 1.8rem;
  margin: 15px 0px 10px;
  text-align: left;
  font-weight: 500;
  line-height: 1.7rem;
  grid-template-columns: (2, minmax(0, 1fr));
}

/* Slideshow */
.latest-wrapper {
  margin-top: 0px;
  margin-bottom: 0px;
  background-color: var(--color-white);
}

.latest-subsection {
  width: 90%;
  padding-top: 0px;
  padding-bottom: 0;
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--color-white);
  margin-left: auto;
  margin-right: auto;
}

.popular-subsection h3 {
  font-size: 1.8rem;
  margin: 15px 0px 10px;
  text-align: left;
  font-weight: 500;
  line-height: 1.7rem;
  grid-template-columns: (2, minmax(0, 1fr));
}

.card-container {
  text-align: center;
  border-radius: 10px;
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition for scaling */
}

.card-container:hover {
  transform: scale(0.95); /* Grow the box slightly on hover */
}

.card-container img {
  width: 100%;
  height: 25vh;
  object-fit: cover;
  border-radius: 10px;
  margin-bottom: 0.75rem;
  justify-content: center;
}

.card-container a {
  transform: scale(0.9);
}

/* Title */
.slideshow-title-container {
  display: flex;
  align-items: center; /* Vertically center the items */
  justify-content: space-between; /* Space out the title and subtitle */
}

.popular-title {
  font-size: 1.1rem;
  margin: 15px 15px 10px;
  font-weight: 500;
  line-height: 1.7rem;
}

.slideshow-subtitle {
  margin-left: auto; /* Push the subtitle to the right */
  font-size: 1.55rem;
  margin-right: 6px; /* Add some spacing on the right */
  font-family: var(--font-button);
  color: var(--color-black);
}

.project-title {
  font-size: 1.1rem;
  margin: 15px 15px 10px;
  color: var(--color-black);
  text-align: center;
  font-weight: 500;
  line-height: 1.7rem;
}

/* Cards Swiper */
.swiper {
  width: 100%;
  overflow-x: scroll !important;
}

.swiper-wrapper {
  display: flex !important;
  justify-content: space-evenly;
  gap: 1rem;
  padding: 10px 0;
}

.swiper-slide {
  flex: 0 0 auto;
  width: 12rem; /* 5 posts with a gap */
  text-align: center;
}

/* Responsive Styles */
@media (max-width: 1024px) {
  .swiper-slide {
    width: 11rem; /* Adjust slide width for tablets */
  }

  .card-container img {
    height: 150px; /* Adjust image height for tablets */
  }

  .project-title {
    font-size: 1rem; /* Adjust font size for tablets */
  }
}

@media (max-width: 768px) {
  .slideshow-title-container {
    height: 6vh;
  }

  .popular-subsection {
    width: 90%;
    align-items: center;
  }
  .slideshow-title {
    font-size: 1.5rem; /* Adjust title size for mobile */
  }

  .swiper-slide {
    width: 9rem; /* Adjust slide width for mobile */
  }

  .card-container img {
    /* height: 120px; Adjust image height for mobile
    aspect-ratio: 3/4; */
  }

  .project-title {
    font-size: 0.9rem; /* Adjust font size for mobile */
  }
}

@media (max-width: 575px) {
  .slideshow-title {
    font-size: 1.25rem; /* Further adjust title size for small screens */
  }

  .swiper-slide {
    width: 8rem; /* Adjust slide width for small screens */
  }

  .slideshow-subtitle {
    margin: 0;
    font-size: 0rem;
  }

  .project-title {
    font-size: 0.8rem; /* Adjust font size for small screens */
  }
}

/* Box Feature Section */
.featured-article {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  max-width: 800px;
  margin: 20px auto;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.article-image {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  object-fit: cover;
}

.article-image a {
  display: flex;
  justify-content: center;
}

.article-image img {
  width: 18em;
  height: auto;
  display: block;
  border-radius: 5%;
  margin: 1.5em;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

.article-content {
  flex: 1;
  padding: 20px;
}

.article-content h2 {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 1.5rem;
  color: var(--color-red);
  margin: 0px auto;
  line-height: 2rem;
}

.article-content h3 {
  font-size: 2rem;
  color: var(--color-black);
  margin: 8px auto;
  line-height: 3.5vh;
}

.article-content p {
  font-size: 1rem;
  color: #666;
  line-height: 1.6;
  margin-bottom: 20px;
}

.article-content a {
  line-height: normal;
}

.article-button {
  font-family: var(--font-button);
  display: inline-block;
  padding: 10px 20px;
  background-color: #ff6f61;
  color: #fff;
  text-decoration: none;
  border-radius: 50px;
  font-size: 1.2rem;
  transition: background-color 0.3s ease;
  margin-bottom: 10px;
}

.article-button:hover {
  background-color: var(--color-red);
  color: var(--color-white);
}

/* Responsive styles for tablets */
@media (max-width: 768px) {
  .container {
    padding: 0px;
  }

  .featured-article {
    flex-direction: column;
    gap: 5%;
    margin: 1rem auto;
    width: 25rem;
    height: fit-content;
  }

  .article-image a {
    display: block;
    width: 100%;
    height: 22vh;
    margin: 1vh;
  }

  .article-image img {
    height: 100%; /* Takes the full height of the <a> element */
    width: 100%; /* Takes the full width of the <a> element */
    aspect-ratio: 1 / 1; /* Maintains aspect ratio */
    object-fit: cover; /* Ensures the image covers the container */
    margin: 0;
  }

  .article-content {
    text-align: center;
    padding: 0px 12px 10px;
  }

  .article-content h2 {
    font-size: 1.2rem;
    line-height: 1.8rem;
  }

  .article-content h3 {
    font-size: 1.5rem;
    margin: 0.8rem;
    line-height: 5vh;
  }

  .article-content p {
    font-size: 0.9rem;
    margin: 0;
  }

  .article-button {
    font-size: 1.2rem;
    margin-top: 15px;
    margin-bottom: 0;
  }
}

/* Responsive styles for mobile devices */
@media (max-width: 575px) {
  .featured-article {
    padding: 10px;
    margin: 1rem auto;
    width: 18rem;
    /* height: auto; */
  }

  .article-image a {
    display: block; /* Makes the <a> element a block-level element */
    width: 100%;
    height: 18vh; /* Matches the height of the image */
    margin: 1vh;
  }

  .article-image img {
    height: 100%;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0;
  }

  .article-content {
    text-align: center;
    padding: 0px 10px 10px;
  }

  .article-content h2 {
    font-size: 1rem;
  }

  .article-content h3 {
    font-size: 1rem;
    line-height: 4vh;
  }

  .article-content p {
    font-size: 0.8rem;
  }

  .article-button {
    display: none;
  }
}

/* Destinations Section */
.destinations-wrapper {
  display: flex;
  align-items: center;
  padding-top: 25px;
  height: fit-content;
  width: 100%;
  padding-bottom: 30px;

  &:hover .destinations-cards {
    animation-play-state: paused;
  }
}

.destinations-flag mark {
  font-size: 1rem;
  padding: 10px;
  margin: 15px;
}

.destinations-title h2 {
  font-size: 2rem;
  color: var(--color-red);
  margin-top: 15px;
  margin-bottom: 0px;
}

.destinations-subtitle {
  text-align: center;
  justify-items: center;
  padding-bottom: 10px;
}

.destinations-subtitle p {
  width: 85%;
  font-size: 0.8rem;
  margin-top: 0px;
  margin-bottom: 0px;
}

.destinations-header {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.destinations-cards {
  display: flex;
  height: 300px;
  gap: 1.5rem;
  padding-left: 1.5rem;
  justify-content: flex-start;
  will-change: transform;
  animation: scroll 30s linear infinite;
}

.destinations-country {
  text-align: center;
  line-height: 0.7em;
  font-family: var(--font-button);
  font-size: 30px;
  color: var(--color-white);
  padding: 0.5rem 0.8rem;
  margin-top: 40%;
}

.destinations-padding {
  border-radius: 25%;
  width: 9rem;
  height: auto;
  padding: 1.25em 2.375em;
  flex: 0 0 auto; /* Prevent flex items from shrinking */
  background-color: var(--color-green);
}

.destinations-1,
.destinations-2,
.destinations-3,
.destinations-4,
.destinations-5,
.destinations-6 {
  object-fit: cover;
  background-size: 110%;
}

.destinations-1 {
  background-image: url("images/france.webp");
}
.destinations-2 {
  background-image: url("images/indonesia.webp");
}
.destinations-3 {
  background-image: url("images/japan.webp");
}
.destinations-4 {
  background-image: url("images/italy.webp");
}
.destinations-5 {
  background-image: url("images/malaysia.webp");
}
.destinations-6 {
  background-image: url("images/thailand.webp");
}

@keyframes scroll {
  0% {
    transform: translateX(0); /* Start from the initial position */
  }
  100% {
    transform: translateX(
      -100%
    ); /* Move the container left by 100% of its width */
  }
}

/* Tablet Styles (768px and below) */
@media (max-width: 768px) {
  .destinations-title h2 {
    font-size: 1.75rem; /* Reduce title size for tablets */
  }

  .destinations-subtitle p {
    font-size: 0.75rem; /* Reduce subtitle size for tablets */
  }

  .destinations-cards {
    height: 250px; /* Reduce height of cards container */
    gap: 1rem; /* Reduce gap between cards */
  }

  .destinations-padding {
    width: 7rem; /* Reduce card width for tablets */
    padding: 1em 1.5em; /* Adjust padding */
  }

  .destinations-country {
    font-size: 24px; /* Reduce country name size for tablets */
  }

  .destinations-1,
  .destinations-2,
  .destinations-3,
  .destinations-4,
  .destinations-5,
  .destinations-6 {
    background-size: 120%;
  }
}

/* Mobile Styles */
@media (max-width: 575px) {
  .destinations-title h2 {
    font-size: 1.5rem; /* Further reduce title size for mobile */
  }

  .destinations-subtitle p {
    font-size: 0.7rem; /* Further reduce subtitle size for mobile */
  }

  .destinations-cards {
    height: 200px; /* Further reduce height of cards container */
    gap: 0.75rem; /* Further reduce gap between cards */
  }

  .destinations-padding {
    width: 6rem; /* Further reduce card width for mobile */
    padding: 0.75em 1.25em; /* Adjust padding */
  }

  .destinations-country {
    font-size: 20px; /* Further reduce country name size for mobile */
  }
}

/* About Section */
.about-section {
  padding: 20px 80px; /* Spacing around the section */
  background-color: var(--color-cream); /* Light background color */
}

.about-container {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1080px; /* Limit width for larger screens */
  margin: 0 auto; /* Center the container */
  gap: 10%; /* Space between image and text */
  width: 80%;
}

/* Image Column */
.about-image {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.about-image img {
  height: auto;
  border-radius: 50%; /* Rounded corners for the image */
  padding: 10px;
}

/* Text Column */
.about-content {
  flex: 1.5;
}

.about-content h2 {
  font-size: 2rem;
  color: var(--color-red);
  margin-bottom: 20px;
}

.about-content p {
  font-size: 1rem;
  color: var(--color-black);
  line-height: 1.8;
}

.about-button {
  display: inline-block;
  padding: 10px 20px;
  background-color: var(--color-pink);
  color: var(--color-white);
  text-decoration: none;
  border-radius: 5px;
  font-size: 1rem;
  transition: background-color 0.3s ease;
  margin-bottom: 30px;
}

.about-button:hover {
  background-color: var(--color-red);
  color: var(--color-white);
}

/* Home Blog */
.home .home-blog {
  padding: var(--strawberries-big-padding);
}
.home-blog .container article:first-child {
  grid-area: feat-item;
}
.home-blog .container {
  display: grid;
  grid-template-areas: "feat-item feat-item";
  grid-gap: 25px;
}
.home .home-blog h2 {
  text-align: center;
  position: relative;
}
.home .home-blog h2::after {
  content: "";
  position: absolute;
  background-color: var(--strawberries-light-blue);
  width: 35px;
  height: 5px;
  right: calc(50% - 15px);
  bottom: 0;
}
.home .home-blog .latest-news {
  text-align: center;
}
.home .home-blog .col-12 .latest-news {
  margin-bottom: 40px;
}
.home .home-blog .latest-news img {
  float: none !important;
  margin: 0 0 25px 0 !important;
}
.home .home-blog .latest-news h3 {
  color: #000000;
  margin: 0;
  line-height: 2.6rem;
}
.home .home-blog .meta-info p {
  font-weight: bold;
  margin-bottom: 0;
}
.home .home-blog .meta-info p:last-child {
  margin-top: 5px;
}
.home .home-blog span,
.home .home-blog span a {
  color: var(--strawberries-gray1);
  font-weight: normal;
  text-decoration: none;
  margin: 0 2px 0 0;
}
@media (max-width: 768px) {
  .home-blog .container {
    display: block;
  }
}

/* Footer */
footer {
  background: var(--color-green);
  padding: 15px 0;
  color: var(--color-white);
}
footer .container .row {
  align-items: center;
}

/* Footer - Footer Menu */
.site-footer .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.site-footer .copyright p {
  margin: 0;
}
.footer-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-menu ul li {
  display: inline;
  margin: 0 15px 0 0;
}
.footer-menu ul li:last-child {
  margin: 0;
}
.footer-menu ul li a {
  text-decoration: none;
  color: #ffffff;
}
.footer-menu ul li.current_page_item a {
  font-weight: bold;
}
@media (max-width: 768px) {
  .site-footer .container {
    justify-content: safe;
  }
}
@media (max-width: 575px) {
  .site-footer .container {
    flex-wrap: wrap;
  }
}

/************** INNER PAGES *****************/

/* Blog, Archive, Search */
.blog main .container,
.archive main .container {
  display: flex;
}
.blog .blog-items,
.archive .archive-items {
  padding: 0 15px 0 0;
  flex: 1;
}
.blog .blog-items h2,
.archive .blog-items h2 {
  margin-top: 0;
}
.blog article {
  margin-bottom: 20px;
}
.archive aside {
  padding: 25px;
  background: var(--strawberries-gray2);
  height: 100%;
  width: 30%;
}
@media screen and (max-width: 991px) {
  .blog aside,
  .archive aside,
  .blog .blog-items,
  .archive .archive-items {
    min-width: 100%;
  }
}
.blog h1,
.archive h1 {
  text-align: center;
  margin-top: 0;
}
.archive-description {
  text-align: center;
  max-width: 50%;
  margin: 0 auto 30px auto;
}
.archive-description p {
  font-size: 85%;
}
.home #primary > #main {
  padding: 0;
}
#primary > #main {
  padding: var(--strawberries-big-padding);
}
@media screen and (max-width: 991px) {
  #primary > #main {
    padding: var(--strawberries-mobile-padding);
  }
}
.meta-info p {
  margin: 0;
}
.wp-post-image {
  float: left;
  margin: 0 15px 10px 0;
}
@media screen and (max-width: 550px) {
  .wp-post-image {
    width: 100%;
  }
}
article {
  display: inline-block;
  width: 100%;
}
article.post h1,
.search h1,
.archive h1 {
  font-size: 50px;
  line-height: 4rem;
  margin-bottom: 15px;
}
article.post h2 {
  line-height: 3rem;
  text-transform: none;
}
article h2 {
  line-height: 3rem;
  margin-bottom: 10px;
  text-transform: none;
}
article.post h3,
article.post h4,
article.post h5 {
  margin-bottom: 0;
}
.searchform input[type="text"] {
  padding: 7px 10px;
  border: 1px solid #c6c6c6;
}
.searchform input[type="submit"] {
  padding: 11px 10px;
  background: var(--color-green);
  color: #ffffff;
  border: none;
}
.searchform div {
  display: flex;
}
.searchform input[type="text"] {
  max-width: 70%;
}
.searchform input[type="submit"] {
  max-width: 70%;
}
@media (max-width: 991px) {
  .blog .container,
  .archive .container {
    flex-wrap: wrap;
  }
}

/* Comments */
#commentform input[type="submit"] {
  color: #ffffff;
  padding: 15px 25px;
  display: inline-block;
  background: var(--strawberries-light-blue);
  margin: 20px 0 0;
  border: none;
}
#commentform input[type="submit"]:hover {
  background: var(--strawberries-yellow);
  transition: 0.5s all;
}
#commentform label {
  display: block;
}
#commentform label[for="wp-comment-cookies-consent"] {
  display: inline;
  margin-left: 5px;
}
#commentform input[type="text"],
#commentform textarea {
  padding: 7px 10px;
  border: 1px solid #c6c6c6;
  width: 100%;
}
.comments-area #reply-title {
  border-top: 1px solid #ebebeb;
  padding: 20px 0 0;
  font-family: var(--font-body);
  color: var(--color-pink);
}
.comments-title {
  font-size: 1.5rem;
  margin-bottom: 20px;
  font-family: var(--font-body);
  text-transform: initial;
  color: var(--color-black);
}

.comment-list {
  list-style: none; /* Remove default list styling */
  padding: 0; /* Remove default padding */
  margin: 0 0 40px; /* Add spacing below the comment list */
}

.comment-list .comment {
  margin-bottom: 30px; /* Space between comments */
  padding: 20px; /* Padding inside each comment */
  background-color: var(--color-white); /* Light background for comments */
  border-radius: 8px; /* Rounded corners */
  border: 1px solid var(--color-pink); /* Subtle border */
}

.comment-list .comment .comment-author {
  display: flex; /* Align author avatar and name */
  align-items: center; /* Center items vertically */
  margin-bottom: 15px; /* Space below author section */
}

.comment-list .comment .comment-author img {
  border-radius: 50%; /* Round avatar image */
  margin-right: 10px; /* Space between avatar and name */
  width: 50px; /* Set avatar size */
  height: 50px; /* Set avatar size */
}

.comment-list .comment .comment-author .fn {
  font-weight: bold; /* Bold author name */
  font-size: 1.1em; /* Slightly larger font size */
  color: #333; /* Dark text color */
  margin-right: 0.3em;
}

.comment-list .comment .comment-meta {
  font-size: 0.9em; /* Smaller font size for metadata */
  color: #777; /* Light text color */
  margin-bottom: 10px; /* Space below metadata */
  background-color: var(--color-white); /* Light background for metadata */
}

.comment-list .comment .comment-content {
  font-size: 1em; /* Standard font size for content */
  line-height: 1.6; /* Improve readability */
  color: #444; /* Slightly darker text color */
}

.comment-list .comment .reply {
  margin-top: 15px; /* Space above reply link */
}

.comment-list .comment .reply a {
  color: #0073aa; /* Link color */
  text-decoration: none; /* Remove underline */
  font-weight: bold; /* Bold reply text */
}

.comment-list .comment .reply a:hover {
  text-decoration: underline; /* Underline on hover */
}

.comment-list .children {
  list-style: none; /* Remove default list styling */
  padding-left: 40px; /* Indent child comments */
  margin-top: 20px; /* Space above child comments */
}

.comment-list .children .comment {
  background-color: #fff; /* Different background for child comments */
  border: 1px solid #e0e0e0; /* Subtle border */
}

/* Pagination */
-strawberries-pagination {
  display: flex;
  justify-content: space-between;
}
.pages {
  margin-top: 20px;
}
.nav-links {
  margin-top: 40px;
}
.nav-links .page-numbers {
  padding: 10px 15px;
  display: inline-block;
  background: var(--strawberries-gray3);
}
.nav-links .current {
  background-color: #000000;
  color: #ffffff;
}
.nav-links .next,
.nav-links .prev {
  background-color: transparent;
}
.nav-links .prev {
  padding-left: 0;
}

/* =WordPress Core
  -------------------------------------------------------------- */
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

figcaption{
  display: block !important;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 90%; /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-element-caption p.wp-caption-text {
  display: none;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

@media all and (min-width: 768px) {
  .alignfull {
    margin: 30px calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
  }
  .alignwide {
    margin: 30px calc(25% - 25vw);
  }
}

.site-content {
  overflow: clip;
}

/* Adjust scroll-margin-top for smaller screens */
@media (max-width: 575px) {
  #about,
  #destinations-home {
    scroll-margin-top: 202px; /* Adjust this value to match the mobile header height */
  }
}

/* Post Navigation Styling */
.post-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
  padding-top: 40px;
  border-top: 1px solid #eee;
}

.nav-previous,
.nav-next {
  max-width: 45%;
}

.nav-previous {
  text-align: left;
}

.nav-next {
  text-align: right;
}

.nav-label {
  display: inline;
  font-size: 0.9rem;
  color: #777;
  margin-bottom: 5px;
}

.nav-title {
  display: block;
  font-size: 1.1rem;
  font-weight: bold;
  color: #2c3e50;
}

.nav-icon {
  font-size: 1rem;
  margin: 0 10px;
  color: #777;
  transition: color 0.3s ease;
}

.post-navigation a:hover .nav-icon {
  color: #3498db;
}

@media (max-width: 768px) {
  .post-navigation {
    flex-direction: column;
  }

  .nav-previous,
  .nav-next {
    max-width: 100%;
    margin-bottom: 20px;
  }
}

/* General Blog Post Styling */
.blog-post {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  font-family: var(--font-body);
  line-height: 1.6;
  color: var(--color-black);
}

/* Post Title */
.entry-header {
  display: flex;
  flex-direction: column; /* Stack elements vertically on smaller screens */
  text-align: left;
  margin-bottom: 30px;
  gap: 5%;
}

.entry-title {
  font-size: 2rem;
  margin-bottom: 10px;
  color: var(--color-black);
  font-weight: normal;
}

.entry-meta {
  font-size: 0.9rem;
  color: var(--strawberries-gray1);
  margin-bottom: 20px;
}

.author-box {
  display: flex;
  align-items: center;
  padding: 10px 0;
  font-family: var(--font-body);
  font-size: 0.9rem;
}

.author-info h4 {
  text-transform: uppercase;
  font-family: var(--font-body);
  font-size: 1rem;
  color: var(--color-black);
  margin: 0;
}

.author-avatar img {
  width: 5em;
  border-radius: 50%;
  margin-right: 20px;
}

/* Post Content */
.entry-content {
  font-size: 1rem;
  color: var(--color-black);
}

.entry-content p {
  margin-bottom: 20px;
}

.entry-content h2,
.entry-content h3 {
  color: #2c3e50;
  margin-top: 30px;
  margin-bottom: 15px;
  font-weight: normal;
}

.entry-content h2 {
  font-size: 1.75rem;
}

.entry-content h3 {
  font-size: 1.25rem;
}

.entry-content a {
  color: var(--color-blue);
  text-decoration: none;
}

.entry-content a:hover {
  text-decoration: underline;
}

/* Post Footer */
.entry-footer {
  margin-top: 40px;
  font-size: 0.9rem;
  color: var(--color-black);
  border-top: 1px solid #eee;
  padding-top: 20px;
  background-color: var(--color-white);
}

.post-categories,
.post-tags {
  margin-bottom: 10px;
}

.post-categories a,
.post-tags a {
  text-decoration: none;
}

.post-categories a:hover,
.post-tags a:hover {
  text-decoration: underline;
}

/* Media Queries for Responsiveness */
@media (max-width: 768px) {
  .blog-post {
    width: 95%;
  }

  .entry-header {
    flex-direction: column; /* Stack header elements vertically */
    gap: 10px; /* Reduce gap for smaller screens */
  }

  article.post h1 {
    font-size: 2.2rem; /* Further reduce title size */
    line-height: 5vh;
  }

  .author-box {
    padding: 5px 0; /* Further reduce padding */
  }

  .author-avatar img {
    width: 50px; /* Further reduce avatar size */
  }

  .post-thumbnail img {
    aspect-ratio: 16 / 9; /* Adjust aspect ratio for smaller screens */
  }
}

@media (max-width: 480px) {
  .blog-post {
    width: 90%;
  }

  article.post h1 {
    font-size: 2rem; /* Further reduce title size */
  }

  .author-box {
    font-size: 0.8rem; /* Further reduce font size */
  }

  .author-avatar img {
    width: 40px; /* Further reduce avatar size */
  }

  .entry-content {
    font-size: 0.9rem; /* Further reduce content font size */
  }

  .entry-content h2 {
    font-size: 1.5rem; /* Further reduce heading size */
  }

  .entry-content h3 {
    font-size: 1.1rem; /* Further reduce heading size */
  }
}

.social-container {
  justify-content: right;
}

.social-wrapper {
  vertical-align: middle;
  color: #252525;
  position: relative;
  font-size: 16px;
  color: var(--color-cream);
  align-items: right;
}

.social-item {
  display: inline-block;
  font-size: 12px;
  color: var(--color-white);
  padding: 4px 10px;
  border: 1px solid #ebebeb;
  cursor: pointer;
  margin-left: 5px;
  text-align: center;
  width: 32px;
}

.facebook:hover {
  background: #3b5998;
  border-color: #3b5998;
  color: var(--color-white);
}

.twitter:hover {
  background: #00aced;
  border-color: #00aced;
  color: var(--color-white);
}

.linkedin:hover {
  background: #0177b5;
  border-color: #0177b5;
  color: var(--color-white);
}

.pinterest:hover {
  background: #bd081c;
  border-color: #bd081c;
  color: var(--color-white);
}

/* Archive Grid */
.archive-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Archive Item */
.archive-item {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.archive-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* Archive Thumbnail */
.archive-thumbnail {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 3; /* Adjust based on your design */
}

.archive-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.archive-item:hover .archive-thumbnail img {
  transform: scale(1.1);
}

/* Archive Meta */
.archive-meta {
  padding: 20px;
  text-align: center;
}

.archive-category {
  display: block;
  font-size: 0.9rem;
  color: #ff6f61; /* Accent color */
  text-transform: uppercase;
  margin-bottom: 10px;
}

.archive-title {
  font-size: 1.25rem;
  margin: 0;
  color: #333;
}

/* Archive Pagination */
.archive-pagination {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 40px;
}

.archive-pagination .page-numbers {
  display: inline-block;
  padding: 10px 15px;
  margin: 0 5px;
  background: #f5f5f5;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  transition: background 0.3s ease, color 0.3s ease;
}

.archive-pagination .page-numbers.current,
.archive-pagination .page-numbers:hover {
  background: #ff6f61;
  color: #fff;
}

/* Tablet Styles (768px and below) */
@media (max-width: 768px) {
  .archive-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
  }

  .archive-meta {
    padding: 15px;
  }

  .archive-title {
    font-size: 1.1rem;
  }
}

/* Mobile Styles (480px and below) */
@media (max-width: 480px) {
  .archive-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .archive-thumbnail {
    aspect-ratio: 3 / 2; /* Adjust for mobile */
  }

  .archive-meta {
    padding: 10px;
  }

  .archive-title {
    font-size: 1rem;
  }
}

/* Latest Blogposts Page */

/* Latest Grid */
.latest-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 2 articles per row */
  gap: 30px;
  padding: 20px;
  margin: 0 auto;
}

/* latest Item */
.latest-item {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.latest-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* latest Thumbnail */
.latest-thumbnail {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 3; /* Adjust based on your design */
}

.latest-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.latest-item:hover .latest-thumbnail img {
  transform: scale(1.1);
}

/* Latest Meta */
.latest-meta {
  padding: 20px;
  text-align: center;
}

.latest-category {
  display: block;
  font-size: 0.9rem;
  color: #ff6f61; /* Accent color */
  text-transform: uppercase;
  margin-bottom: 10px;
}

.latest-title {
  font-size: 1.25rem;
  margin: 0;
  color: var(--color-black);
  line-height: 1.5rem;
  font-family: var(--font-title);
  /* font-style: italic; */
}

/* Latest Pagination */
.latest-pagination {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 40px;
}

.latest-pagination .page-numbers {
  display: inline-block;
  padding: 10px 15px;
  margin: 0 5px;
  background: #f5f5f5;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  transition: background 0.3s ease, color 0.3s ease;
}

.latest-pagination .page-numbers.current,
.latest-pagination .page-numbers:hover {
  background: #ff6f61;
  color: #fff;
}

/* Tablet Styles (768px and below) */
@media (max-width: 768px) {
  #primary {
    flex-direction: column; /* Stack sidebar below main content */
  }

  #secondary {
    width: 100%; /* Full width for sidebar on smaller screens */
    max-width: none; /* Remove max-width restriction */
  }

  .latest-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 articles per row */
    gap: 10px;
    margin: 0 auto;
  }

  .latest-meta {
    padding: 15px;
  }

  .latest-title {
    font-size: 1.1rem;
  }
}

/* Mobile Styles */
@media (max-width: 575px) {
  .site-main h3 {
    font-size: 1.65vh;
    margin: 1vh 2vh;
  }

  .latest-grid {
    gap: 10px;
    margin: 0 4%;
    display: block;
    padding: 1em;
  }

  .latest-thumbnail img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }

  .latest-meta {
    padding: 10px;
  }

  .latest-meta p {
    margin: 5px;
    line-height: 1.3rem;
    text-align: center;
  }

  .latest-title {
    font-size: 1.2rem;
  }

  .categories-tags {
    display: none;
  }
}

/* Default styles for larger screens */
#primary {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

#main {
  flex: 1;
  min-width: 300px;
}

#secondary {
  flex: 0 0 300px;
}

/* Blogposts Container */
.blogposts-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

h2.blogposts-header {
  display: grid;
  align-items: center;
}

h4.blogposts-header {
  font-family: var(--font-button);
  font-size: 2em;
  padding-left: 1rem;
  display: grid;
  align-items: center;
  color: black;
}

/* Link styling */
.blogposts-link {
  display: inline-flex; /* Use Flexbox for alignment */
  align-items: center; /* Vertically center the text and icon */
  text-decoration: none; /* Remove underline */
  font-size: 2rem; /* Adjust text size */
}

/* Arrow icon styling */
.blogposts-nav {
  font-size: 1.3rem; /* Adjust icon size */
  transition: transform 0.3s ease; /* Smooth hover effect */
  padding-left: 0.4rem;
}

/* Hover effect for the link */
.blogposts-link:hover {
  color: #ee5a2f; /* Change text color on hover */
}

/* Blogposts Item */
.blogposts-item {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blogposts-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* Blogposts Thumbnail */
.blogposts-thumbnail {
  overflow: hidden; /* Ensure the image doesn't overflow */
  height: 200px; /* Set a fixed height for the thumbnail container */
}

.blogposts-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Crop the image to fit the container */
  border-radius: 8px 8px 0 0; /* Rounded corners only at the top */
}

/* Blogposts Title */
.blogposts-title {
  font-size: 1.5rem;
  margin: 15px;
  color: #333;
  line-height: 2rem;
}

/* Blogposts Excerpt */
.blogposts-excerpt {
  font-size: 0.8rem;
  margin: 0 15px 15px;
  color: #666;
  padding: 0.02vh 0.05vh;
}

.blogposts-excerpt p {
  line-height: 1.3rem;
}

/* Blogposts Link */
.blogposts-link {
  text-decoration: none;
  color: inherit;
  display: block; /* Ensure the link covers the entire item */
}

/* No Posts Message */
.blogposts-no-posts {
  text-align: center;
  font-size: 1.2rem;
  color: #888;
  margin: 50px 0;
}

/* Side-by-side Shorts Layout */
.shorts-side-layout {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 40px;
  max-width: 1200px;
  margin: 20px auto;
  padding: 0 20px;
}

.shorts-heading {
  flex: 0.5;
  min-width: 300px;
  text-align: right;
}

.shorts-heading h2 {
  font-size: 5vh;
  margin-bottom: 15px;
}

.shorts-player-wrapper {
  flex: 1;
  min-width: 300px;
  max-width: 360px;
}

.shorts-iframe-container {
  position: relative;
  padding-bottom: 177.78%; /* 9:16 aspect ratio */
  height: 0;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.shorts-iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* TOC Wrapper */
.toc-wrapper {
    margin: 30px 0;
    position: relative;
}

/* Toggle Button */
.toc-toggle {
    background: #F7E0DE;
    color: #d45d79 !important;
    border: none;
    border-radius: 12px 12px 0 0;
    padding: 12px 20px;
    font-family: 'Montserrat Alternates', sans-serif;
    font-size: 18px;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    text-align: left;
    margin: 0 !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s ease;
}

.toc-toggle:hover {
    background: #ffd1dc;
}

/* TOC Block - HIDDEN by default */
.toc-block {
    background: #fff9fa;
    border: 1px solid #ffdfe6;
    border-top: none;
    border-radius: 0 0 12px 12px;
    padding: 20px 25px;
    margin: 0;
    display: none; /* Hidden initially */
}

/* TOC Block - VISIBLE state */
.toc-block.is-visible {
    display: block !important;
    animation: fadeIn 0.4s ease-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Bullet points */
.toc-block ul {
    list-style: disc !important;
    padding-left: 20px !important;
    margin: 15px 0 5px 0 !important;
}

.toc-block li {
    margin-bottom: 8px !important;
    padding-left: 5px !important;
    line-height: 1.5 !important;
}

.toc-block li:before {
    content: "" !important;
}

.toc-item.toc-level-2 {
    font-size: 1.1em !important;
    font-weight: 600 !important;
    color: #d45d79 !important;
    margin-bottom: 12px !important;
}

.toc-item.toc-level-3 {
    font-size: 0.95em !important;
    font-weight: 500 !important;
    color: #a36b7a !important;
    margin-left: 15px !important;
    margin-bottom: 8px !important;
}

.toc-block a {
    color: inherit !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}

.toc-block a:hover {
    color: #d45d79 !important;
    text-decoration: underline !important;
}

@media (max-width: 767px) {
    .toc-toggle {
        padding: 10px 15px;
        font-size: 16px;
    }
    .toc-block {
        padding: 15px 20px !important;
    }
}

/* Targets ONLY the gallery block (not standalone images) */
.wp-block-gallery {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 1% !important;
    -webkit-overflow-scrolling: touch !important; /* Smooth mobile scroll */
	margin: 0;
}

/* Gallery items */
.wp-block-gallery .wp-block-image {
    flex: 0 0 auto !important;
    margin: 0 !important;
    width: 49% !important;
    height: auto !important;
}

.wp-block-image img {
	border-radius: 1.5vh;
}

/* Target ONLY centered single images */
.wp-block-image.aligncenter {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

/* Ensure images inside maintain centering */
.wp-block-image.aligncenter img {
    display: inline-block !important;
    margin: 0 auto !important;
}

/* Keep our previous responsive sizing */
.wp-block-image.aligncenter img {
    max-width: min(500px, 80vw) !important;
    height: auto !important;
}

/* Mobile adjustment */
@media (max-width: 768px) {
    .wp-block-image.aligncenter img {
/*         max-width: 90vw !important; */
    }
}

.wp-block-pullquote p {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, rgba(247, 224, 222, 1) 50%, rgba(247, 224, 222, 1) 100%);
	display: inline;
	font-size: var(--wp--preset--font-size--medium);
	font-style: oblique;
}

.wp-block-pullquote cite {
	display: block;
	padding-top: 1em;
	font-size: 15px;
	font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .shorts-side-layout {
    flex-direction: column;
    gap: 30px;
  }

  .shorts-heading {
    text-align: center;
  }

  .shorts-heading p {
    margin: 0 auto;
  }
}

/* Further adjustments for smaller screens */
@media (max-width: 768px) {
  /* Hide floating decorative images — puppy, strawberry */
  img[src*="puppy.webp"],
  img[src*="strawb-ss.png"],
  img[src*="divider-ss.png"] {
    display: none !important;
  }

  /* Hide the "Latest Posts", "More Interesting Stories", Destinations Flag & Divider section (duplicate of Latest Posts) */
  .latest-wrapper, .shorts-heading, .destinations-flag, .destinations-subtitle, .ss-divider, .blogposts-excerpt {
    display: none !important;
  }

  /* Keep hero image but make it small */
  .hero-container {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .hero-column-image {
    display: flex !important; /* Keep image visible */
    height: auto !important;
  }

  .hero-image {
    width: 120px !important; /* Small circular image */
    height: 120px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    margin: 0 auto !important;
  }

  .hero-column-content {
    justify-content: center !important;
    text-align: center !important;
  }

  .hero-title {
    font-family: var(--font-body);
    color: var(--color-black) !important;
    font-size: 1.6rem !important;
    line-height: 1.3 !important;
  }

  .hero-flag {
    font-size: 1rem !important;
    padding: 1% 2%;
    line-height: 1rem;
  }

  .hero-description {
    font-size: 0.95rem !important;
    padding: 0;
  }

  .hero-cta {
    font-family: var(--font-body);
    font-size: 1.2rem !important;
    padding: 8px 20px !important;
    color: var(--color-black) !important;
    background-color: var(--color-white) !important;
  }

  .hero-cta:hover,
  .hero-title:hover {
    color: var(--color-pink) !important;
    background-color: var(--color-white);
  }

  /* Popular posts styling */
  .popular-subsection .slideshow-title,
  [class*="popular"] .slideshow-title {
    font-family: var(--font-body);
    font-weight: 700;
  }

  .popular-subsection .project-title,
  [class*="popular"] article {
    margin: 0;
    font-family: var(--font-body);
    font-weight: 600;
  }

  a:where(:not(.wp-element-button)) {
    text-decoration: none !important;
  }

  /* Explore the world */
  .destinations {
    padding: 0 16px;
  }

  .destinations .section-title {
    font-size: 20px;
    margin-bottom: 16px;
  }

  .destinations ul,
  .destinations .country-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 0;
  }

  .destinations li,
  .destinations .country-list span {
    background: #f0f0f0;
    padding: 8px 16px;
    border-radius: 40px;
    font-size: 14px;
    list-style: none;
  }

  /* About Sarah */
  .about-section {
    padding: 0;
  }

  .about-container {
    flex-direction: row; /* Stack image and text on smaller screens */
    text-align: center; /* Center-align text */
    gap: 2%;
  }

  .about {
    padding: 24px;
    border-radius: 20px;
    margin: 30px 16px;
    text-align: center;
  }

  .about-content h2 {
    font-size: 2vh;
  }

  .about-content p {
    font-size: 1rem; /* Smaller text on smaller screens */
    margin-top: 0px;
  }

  .about-content-ext {
    display: none;
  }

  /* More articles */
  .blogposts-container {
    background: var(--color-white);
  }

  .blogposts-item {
    display: flex;
  }

  .blogposts-thumbnail {
    height: 18vh;
    aspect-ratio: 1/1;
  }

  .blogposts-title {
    align-content: space-around;
    font-family: var(--font-body);
    font-size: 1.4vh;
    font-weight: 550;
  }

  /* Limit width for better reading */
  .site-content {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }

  /* Fix hero background */
  .hero {
    padding: 20px 16px 30px !important;
    background: white !important;
    background-image: none !important;
  }
}
