/*
Theme Name: Baseway
Theme URI: https://baseway.com
Author: feat.Studio
Author URI: https://feat.studio
Description: Premium dark GTM consultancy theme for Baseway. Features architectural design system with prism gradients, glassmorphism, animated loader, and responsive layouts optimized for enterprise marketing.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: baseway
Tags: dark, one-column, custom-logo, custom-menu, featured-images, translation-ready
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
*/

/* ==========================================================================
   DESIGN SYSTEM — Baseway
   ========================================================================== */

/* --- Reset & Base --- */
*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
}

::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #0A0908; }
::-webkit-scrollbar-thumb { background: #4a4745; border-radius: 9999px; }

::selection {
  background: rgba(45, 87, 108, 0.4);
  color: #eae4e0;
}

body {
  background-color: #0A0908;
  color: #eae4e0;
  font-family: 'Manrope', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

/* --- Gradient Utilities --- */
.prism-gradient {
  background: linear-gradient(135deg, #C5E2DE 0%, #F0F5F4 33%, #A9D3EB 66%, #C0C6F8 100%);
}

.prism-text {
  background: linear-gradient(135deg, #C5E2DE 0%, #A9D3EB 50%, #C0C6F8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.brand-gradient {
  background: linear-gradient(135deg, #C5E2DE 0%, #F0F5F4 33%, #A9D3EB 66%, #C0C6F8 100%);
}

.text-gradient {
  background: linear-gradient(135deg, #C5E2DE 0%, #A9D3EB 50%, #C0C6F8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.prism-text-gradient {
  background: linear-gradient(135deg, #C5E2DE, #F0F5F4, #A9D3EB, #C0C6F8);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* --- Border Utilities --- */
.prism-border {
  border: 1px solid transparent;
  background: linear-gradient(#151312, #151312) padding-box, linear-gradient(135deg, rgba(197,226,222,0.18), rgba(192,198,248,0.18)) border-box;
  transition: background 0.3s;
}
.prism-border:hover {
  background: linear-gradient(#151312, #151312) padding-box, linear-gradient(135deg, #C5E2DE, #C0C6F8) border-box;
}

/* --- Card Styles --- */
.card-high {
  border: 1px solid transparent;
  background: linear-gradient(#211f1d, #211f1d) padding-box, linear-gradient(135deg, rgba(197,226,222,0.18), rgba(192,198,248,0.18)) border-box;
  transition: background 0.3s, transform 0.3s;
}
.card-high:hover {
  background: linear-gradient(#211f1d, #211f1d) padding-box, linear-gradient(135deg, #C5E2DE, #C0C6F8) border-box;
  transform: translateY(-6px);
}

/* --- Ghost Border --- */
.ghost-border {
  position: relative;
}
.ghost-border::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, #C5E2DE, #A9D3EB, #C0C6F8);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.15;
  transition: opacity 0.3s ease;
}
.ghost-border:hover::before {
  opacity: 0.8;
}

/* --- Glass Panel --- */
.glass-panel {
  background: rgba(15, 14, 13, 0.7);
  backdrop-filter: blur(20px);
}

/* --- Orb --- */
.orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(150px);
  opacity: 0.14;
  pointer-events: none;
}

/* --- Ethereal Orb --- */
.ethereal-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(150px);
  z-index: -1;
  opacity: 0.15;
  pointer-events: none;
}

/* --- Form Inputs --- */
.input-field {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #eae4e0;
  transition: all 0.3s ease;
}
.input-field:focus {
  background: rgba(255, 255, 255, 0.05);
  border-color: #a2cce4;
  outline: none;
  box-shadow: 0 0 0 1px rgba(162, 204, 228, 0.5);
}

/* ==========================================================================
   ANIMATIONS
   ========================================================================== */

@keyframes blurIn {
  0% { opacity: 0; filter: blur(10px); transform: translateY(20px); }
  100% { opacity: 1; filter: blur(0); transform: translateY(0); }
}
@keyframes splitWord {
  0% { opacity: 0; transform: translateY(40px); }
  100% { opacity: 1; transform: translateY(0); }
}

.anim-blur-in {
  opacity: 0;
  animation: blurIn 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.split-word {
  opacity: 0;
  display: inline-block;
  animation: splitWord 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  font-size: calc(100% + 2px);
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.marquee-content {
  animation: marquee 30s linear infinite;
  width: max-content;
  display: flex !important;
  flex-wrap: nowrap !important;
}
.marquee-content:hover {
  animation-play-state: paused;
}

@keyframes heroGradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.inner-hero-gradient {
  background: linear-gradient(135deg, #C5E2DE, #F0F5F4, #A9D3EB, #C0C6F8, #C5E2DE);
  background-size: 300% 300%;
  animation: heroGradientShift 8s ease infinite;
}

/* --- Scroll Reveal --- */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* --- Modal Scrollbar --- */
#modal-content-box::-webkit-scrollbar { width: 4px; }
#modal-content-box::-webkit-scrollbar-track { background: rgba(255,255,255,0.03); }
#modal-content-box::-webkit-scrollbar-thumb { background: linear-gradient(to bottom, #C5E2DE, #A9D3EB, #C0C6F8); border-radius: 9999px; }
#modal-content-box { scrollbar-width: thin; scrollbar-color: #A9D3EB rgba(255,255,255,0.03); }

/* --- WordPress Specific --- */
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 0.875rem; color: #afaaa7; margin-top: 0.5rem; }
.aligncenter { display: block; margin: 0 auto; }
.alignleft { float: left; margin-right: 1.5rem; }
.alignright { float: right; margin-left: 1.5rem; }
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px; width: 1px;
  overflow: hidden;
}
