/* Local fonts (as provided) */
@font-face { font-family: 'Poppins'; src: url('/wp-content/themes/inkspot-fse/assets/fonts/poppins/Poppins-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('/wp-content/themes/inkspot-fse/assets/fonts/poppins/Poppins-Medium.ttf') format('truetype'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('/wp-content/themes/inkspot-fse/assets/fonts/poppins/Poppins-Bold.ttf') format('truetype'); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Teko'; src: url('/wp-content/themes/inkspot-fse/assets/fonts/teko/Teko-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Teko'; src: url('/wp-content/themes/inkspot-fse/assets/fonts/teko/Teko-SemiBold.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }

/* Base reset enhancements for theme visuals */
body {
  background-color: #0b0b0d;
  color: #ddd;
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
a { color: #e13b3f; text-decoration: none; }
a:hover { color: #ff555a; }

/* Header (as provided) */
#masthead { background:#0f0f12; border-bottom:1px solid rgba(255,255,255,0.06); }
.header-area .container { display:flex; align-items:center; justify-content:space-between; padding:18px 0; }
.logoimg img { height:48px; width:auto; }
#navigationpanel { display:flex; align-items:center; }
#primary-menu { list-style:none; margin:0; padding:0; display:flex; gap:28px; }
#primary-menu > li > a { color:#fff; font-weight:500; letter-spacing:.3px; }
.header_button a { background:#e13b3f; color:#fff !important; padding:10px 16px; border-radius:4px; }
.header_button a:hover { background:#ff5a5f; }
.menu-toggle { display:none; background:transparent; border:0; }

/* Slider Enhancements (for Nivo Slider integration) */
.HomepageSlider { position:relative; overflow:hidden; max-width:100%; height:70vh; }
#slider .nivoSlider { width:100%; height:100%; background-size:cover; background-position:center; }
.nivo-main-image, .nivo-slice { position:absolute; top:0; left:0; width:100%; height:100%; background-size:cover !important; }
.nivo-slice { background-position: center !important; }
.nivo-controlNav { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); z-index:10; }
.nivo-control { display:inline-block; width:12px; height:12px; background:#fff; border-radius:50%; margin:0 5px; opacity:0.7; cursor:pointer; }
.nivo-control.active { opacity:1; background:#e13b3f; }
.nivo-html-caption { position:absolute; left:8%; top:50%; transform:translateY(-50%); color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.8); z-index:5; background:rgba(0,0,0,0.3); padding:20px; border-radius:5px; }
.nivo-caption h2 { font-size:44px; line-height:1.1; margin:0 0 18px; text-transform:uppercase; letter-spacing:1px; font-family:'Teko', sans-serif; color:#fff; }
.slidermorebtn { display:inline-block; padding:12px 22px; background:#e13b3f; color:#fff; border-radius:3px; font-weight:500; transition:background 0.3s; }
.slidermorebtn:hover { background:#ff5a5f; text-decoration:none; }

/* Main Content Wrapper */
.El-Full-width { background:#0b0b0d; padding:0; }
.elementor { max-width:1200px; margin:0 auto; }
.elementor-section { padding:60px 20px; position:relative; }
.elementor-container { max-width:1200px; margin:0 auto; display:flex; flex-wrap:wrap; gap:20px; align-items:center; justify-content:center; }
.elementor-column { flex:1; min-width:250px; }

/* Section 1: Image Boxes Grid */
.section1 { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px, 1fr)); gap:20px; }
.section1_box { background:#121216; border:1px solid rgba(255,255,255,0.06); padding:20px; border-radius:8px; transition:transform 0.3s, box-shadow 0.3s; text-align:center; }
.section1_box:hover { transform:translateY(-5px); box-shadow:0 10px 30px rgba(225,59,63,0.2); }
.section1_box img { width:100%; height:auto; border-radius:5px; }
.elementor-image-box-title a { color:#fff; font-size:20px; font-family:'Teko', sans-serif; letter-spacing:0.5px; text-transform:uppercase; }
.elementor-image-box-description { color:#b7b7b7; font-size:14px; margin-top:10px; }

/* Section 2: Welcome Section */
.section2 { background:linear-gradient(135deg, rgba(11,11,13,0.9), rgba(15,15,18,0.8)), url('/wp-content/themes/inkspot-fse/assets/images/section2_bg.jpg') center/cover; color:#fff; padding:80px 20px; }
.section2_image_box { position:relative; }
.section2_large_imag img { width:100%; height:auto; border-radius:10px; }
.section2_small_image { position:absolute; bottom:-20px; right:-20px; z-index:2; }
.section2_small_image img { width:80%; height:auto; border:3px solid #e13b3f; border-radius:10px; }
.section2_content_box h2 { margin:8px 0; color:#fff; font-family:'Teko', sans-serif; letter-spacing:0.5px; font-size:28px; }
.section2_content_box p { color:#cfcfcf; line-height:1.6; margin:15px 0; }

/* Section 3: Features Icons */
.section3 { background:#0f0f12; display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:20px; }
.section3_box1, .section3_box4 { grid-column:span 1; }
.section3 img { width:100%; height:auto; }
.section3 .elementor-image-box-title { color:#fff; font-size:18px; letter-spacing:0.5px; text-align:center; margin-top:10px; }

/* General Elementor Helpers */
.elementor-widget-heading h2 { font-family:'Teko', sans-serif; color:#fff; letter-spacing:0.5px; text-align:center; font-size:32px; margin-bottom:20px; }
.elementor-widget-text-editor { color:#cfcfcf; text-align:center; max-width:800px; margin:0 auto; }
.elementor-button { display:inline-block; background:#e13b3f; color:#fff; padding:12px 24px; border-radius:4px; transition:background 0.3s; text-align:center; }
.elementor-button:hover { background:#ff5a5f; }

/* Blog Listing (as provided, with enhancements) */
.posts-archive { max-width:1100px; margin:40px auto; padding:0 20px; }
.posts-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.post-card { background:#121216; border:1px solid rgba(255,255,255,0.06); border-radius:10px; overflow:hidden; display:flex; flex-direction:column; transition:transform 0.3s; }
.post-card:hover { transform:translateY(-5px); }
.post-card img { width:100%; height:220px; object-fit:cover; display:block; }
.post-card .post-body { padding:16px; }
.post-card h2 { font-size:20px; margin:0 0 10px; color:#fff; }
.post-card p { margin:0 0 12px; color:#b7b7b7; }
.post-card .readmore { color:#e13b3f; font-weight:600; }

/* Footer (as provided) */
.site-footer { background:#0f0f12; color:#a9a9a9; padding-top:30px; border-top:1px solid rgba(255,255,255,0.06); }
.footer_menu ul { list-style:none; display:flex; gap:20px; justify-content:center; padding:0; margin:14px 0; }
.footer_menu a { color:#ddd; }
.footer_menu a:hover { color:#fff; }
.copyright-wrapper { border-top:1px solid rgba(255,255,255,0.06); margin-top:20px; padding:20px 0; }
.copyright-center { text-align:center; color:#818181; }
.footsocialicon { display:flex; gap:12px; justify-content:center; margin-top:8px; }
.footsocialicon a { color:#cfcfcf; font-size:18px; }
.footsocialicon a:hover { color:#fff; }

/* Responsive Design */
@media (max-width: 768px) {
    .nivo-caption h2 { font-size:28px; }
    .section1, .section3 { grid-template-columns:1fr; }
    .posts-grid { grid-template-columns:1fr; }
    .elementor-container { flex-direction:column; }
}

/* Additional styles from your provided CSS (booking form, buttons, etc.) - unchanged */
.booking-wrap { max-width:780px; margin:40px auto; padding:24px; background:#121216; border:1px solid rgba(255,255,255,0.06); border-radius:10px; }
.booking-wrap h1 { margin:0 0 14px; color:#fff; }
.booking-grid { display:grid; grid-template-columns:1fr; gap:16px; }
.booking-grid .full { grid-column:1 / -1; }
.booking-field label { display:block; margin-bottom:6px; color:#cfcfcf; font-size:14px; }
.booking-field input[type="text"], .booking-field input[type="tel"], .booking-field input[type="date"], .booking-field input[type="time"], .booking-field input[type="file"], .booking-field textarea { width:100%; background:#0f0f12; color:#eaeaea; border:1px solid rgba(255,255,255,0.08); border-radius:6px; padding:10px 12px; }
.booking-actions { display:flex; gap:12px; justify-content:flex-end; margin-top:10px; }
.btn-primary { background:#e13b3f; color:#fff; border:0; padding:12px 18px; border-radius:6px; cursor:pointer; }
.btn-primary:hover { background:#ff5a5f; }
.form-note { color:#8a8a8a; font-size:13px; margin-top:8px; }
.taxonomy-category.wp-block-post-terms a, .taxonomy-post_tag.wp-block-post-terms a, .wp-block-tag-cloud a { border: none; color: var(--wp--preset--color--black); padding: 0 10px; }
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover { border-color: var(--wp--preset--color--primary); color: var(--wp--preset--color--black)!important; }
input[type="button"], input[type="reset"], input[type="submit"], .wpcf7 input[type="submit"]:hover { border: none; background: var(--wp--preset--color--secondary)!important; color: var(--wp--preset--color--white); }
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { background: var(--wp--preset--color--primary); color: var(--wp--preset--color--white); }
/*Dropdown color*/
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{ color:#fff !important; border:none !important}
.wp-block-navigation ul li.current-menu-item > a, .wp-block-navigation ul li > a:hover{ color:var(--wp--preset--color--secondary) !important; }
.SF-Sidebar ul li a:hover, .SF-copy-wrap a:hover{ color:var(--wp--preset--color--primary); }
.footer-wrapper .wp-block-social-links li:hover, .wpcf7 input[type="submit"], .right-BX:hover{ background:var(--wp--preset--color--primary) !important; }
ul.fs-footer-post li .wp-block-latest-posts__post-title:hover:hover{ color:var(--wp--preset--color--primary) !important; }