@charset "UTF-8";
/*
Theme Name: LCSU Fluid Academic
Theme URI: https://kulicode.com/lcsu
Author: KuliCode
Author URI: https://kulicode.com
Description: A premium WordPress theme for Language Center Siliwangi University. Features the Fluid Academic design system with glassmorphism, editorial typography, and modern bento grid layouts.
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: lcsu
Requires PHP: 7.4
Tested up to: 6.5
Tags: education, custom-logo, custom-menu, featured-images, theme-options, translation-ready
*/

/* ── CSS Custom Properties ── */
:root {
    --primary: #465d79;
    --primary-dim: #3a516c;
    --primary-container: #c4dcfd;
    --primary-fixed: #c4dcfd;
    --on-primary: #edf3ff;
    --on-primary-container: #374e69;
    --secondary: #006571;
    --secondary-fixed: #26e6ff;
    --secondary-container: #26e6ff;
    --on-secondary: #d8f8ff;
    --on-secondary-fixed: #003a42;
    --tertiary: #9c00b7;
    --tertiary-container: #f189ff;
    --on-tertiary: #ffeefb;
    --surface: #f3f7fb;
    --surface-container-lowest: #ffffff;
    --surface-container-low: #ecf1f6;
    --surface-container: #e3e9ee;
    --surface-container-high: #dde3e8;
    --surface-container-highest: #d7dee3;
    --on-surface: #2a2f32;
    --on-surface-variant: #575c60;
    --outline: #73777b;
    --outline-variant: #a9aeb1;
    --error: #b31b25;
    --font-headline: 'Plus Jakarta Sans', sans-serif;
    --font-body: 'Inter', sans-serif;
    --radius: 1rem;
    --radius-lg: 2rem;
    --radius-xl: 3rem;
    --radius-full: 9999px;
    --shadow-ambient: 0 20px 40px rgba(70,93,121,0.08);
    --shadow-nav: 0 20px 40px rgba(70,93,121,0.05);
    --transition: all 0.3s ease;
}

/* ── Reset & Base ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.618;color:var(--on-surface);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary);text-decoration:none;transition:var(--transition)}
a:hover{opacity:.85}
h1,h2,h3,h4,h5,h6{font-family:var(--font-headline);font-weight:700;line-height:1.1;color:var(--on-surface)}
ul,ol{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}
input,select,textarea{font-family:var(--font-body);font-size:14px}
.material-symbols-outlined{font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;vertical-align:middle}

/* ── Layout ── */
.lcsu-container{max-width:1440px;margin:0 auto;padding:0 40px}
.lcsu-section{padding:128px 0;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}
.lcsu-section.is-visible{opacity:1;transform:translateY(0)}
.bg-surface-container-low{background:var(--surface-container-low)}
.bg-primary{background:var(--primary)}
.bg-white{background:#fff}
.bg-secondary-fixed{background:var(--secondary-fixed);color:var(--on-secondary-fixed)}
.text-on-primary{color:var(--on-primary)}
.text-primary-fixed{color:var(--primary-fixed);opacity:.7}

/* ── Buttons ── */
.primary-gradient,.btn-primary-gradient{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-container) 100%);color:var(--on-primary);border:none;border-radius:var(--radius-full);font-family:var(--font-headline);font-weight:700;cursor:pointer;transition:var(--transition)}
.btn-primary-gradient:hover{transform:scale(1.02);box-shadow:0 10px 30px rgba(70,93,121,.2)}
.btn-primary-gradient:active{transform:scale(.95)}
.btn-lg{padding:20px 40px;font-size:16px}
.btn-nav{padding:12px 32px;font-size:13px;display:none}
.btn-white{background:#fff;color:var(--primary);padding:20px 48px;border-radius:var(--radius-full);font-family:var(--font-headline);font-weight:800;font-size:16px;transition:var(--transition);box-shadow:0 20px 40px rgba(0,0,0,.15)}
.btn-white:hover{transform:scale(1.05)}
.btn-outline-white{border:2px solid rgba(255,255,255,.3);color:var(--on-primary);padding:20px 48px;border-radius:var(--radius-full);font-family:var(--font-headline);font-weight:700;font-size:16px;background:transparent;transition:var(--transition)}
.btn-outline-white:hover{background:rgba(255,255,255,.1)}
.btn-text-arrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-headline);font-weight:700;color:var(--primary);transition:var(--transition)}
.btn-text-arrow:hover .material-symbols-outlined{transform:translateX(4px)}
.btn-text-arrow .material-symbols-outlined{transition:transform .3s ease}
.btn-text-secondary{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-headline);font-weight:700;color:var(--secondary)}
.btn-text-link{color:var(--primary);font-weight:700}
.btn-text-link:hover{text-decoration:underline;text-underline-offset:8px}

/* ── Glass Panel ── */
.glass-panel{background:rgba(255,255,255,.6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}

/* ── Gradient Text ── */
.gradient-text{background:linear-gradient(135deg,var(--primary),var(--primary-container));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}