/* ================= DESIGN TOKENS ================= *//* All design system values:colours,typography,spacing,effects,layout */:root{/* Neutral palette */ --color-neutral-50:#f6f8fa;--color-neutral-100:#f8fafc;--color-neutral-200:#e5e9f0;--color-neutral-800:#1a1a1a;--color-neutral-900:#111827;/* Brand colors */ --color-primary-600:#1f3a5f;--color-accent-500:#2f9e8f;/* Semantic grays */ --color-gray-500:#6b7280;--color-gray-400:#9ca3af;/* Surface colors */ --bg-page:var(--color-neutral-50);--bg-surface:#ffffff;--bg-primary:var(--color-primary-600);--bg-footer:var(--color-neutral-900);/* Text colors */ --text-base:var(--color-neutral-800);--text-muted:var(--color-gray-500);--text-footer:var(--color-gray-400);--text-on-primary:#ffffff;/* Border colors */ --border-primary:var(--color-primary-600);/* Accent colors */ --accent-primary:var(--color-accent-500);/* Typography */ --font-family-base:Inter,system-ui,sans-serif;--line-height-base:1.6;--line-height-tight:1.25;/* Spacing */ --spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-2xl:4rem;--gap-sm:1rem;--gap-md:1.5rem;--gap-lg:2rem;--gap-xl:3rem;/* Effects */ --radius-sm:12px;--radius-full:999px;--shadow-soft:0 10px 30px rgba(0,0,0,0.06);--gradient-subtle:linear-gradient(135deg,#e5e9f0,#f8fafc);--transition-fast:0.2s ease;/* Layout */ --max-width-content:1100px;--max-width-text:45ch}/* ================= RESET ================= *//* Normalise browser defaults */*,*::before,*::after{box-sizing:border-box}body{margin:0}/* ================= BASE STYLES ================= *//* Typography defaults,page-level backgrounds,accessibility */body{font-family:var(--font-family-base);color:var(--text-base);line-height:var(--line-height-base);background:var(--bg-page)}h1,h2,h3{line-height:var(--line-height-tight)}/* Page-level backgrounds */.hero{background:var(--bg-surface)}.cta{background:var(--bg-primary);color:var(--text-on-primary)}.site-footer{background:var(--bg-footer);color:var(--text-footer)}/* Accessibility */@media (prefers-reduced-motion:reduce){*{transition:none !important}}/* ================= LAYOUT ================= *//* Grid,containers,responsive breakpoints *//* Container */.container{max-width:var(--max-width-content);margin:0 auto;padding:var(--spacing-2xl) var(--spacing-md)}/* Grid layouts */.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--gap-xl);align-items:center}.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--gap-sm);text-align:center}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--gap-lg)}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-xl)}.value-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--gap-md)}.process-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--gap-lg)}.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap}/* Section layout */.cta{text-align:center}.hero-lead{max-width:var(--max-width-text)}.cta-actions .btn{margin:var(--spacing-xs)}/* Responsive */@media (max-width:768px){.hero-grid,.audience-grid{grid-template-columns:1fr;gap:var(--gap-lg)}.trust-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.service-grid,.value-grid{grid-template-columns:1fr}.process-steps{grid-template-columns:1fr}.container{padding:var(--spacing-xl) var(--spacing-sm)}}@media (max-width:480px){.trust-grid{grid-template-columns:1fr}.cta-actions .btn{display:block;margin:var(--spacing-xs) 0;text-align:center}}/* ================= COMPONENTS ================= *//* Buttons,cards,hero,process,trust,value cards,logo,footer *//* Logo */.site-logo{margin-bottom:var(--spacing-xl)}.site-logo img{max-width:100%;height:auto;display:block}/* Buttons */.btn{display:inline-block;padding:0.75rem 1.4rem;border-radius:var(--radius-full);text-decoration:none;font-weight:500;transition:transform var(--transition-fast),background var(--transition-fast)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--bg-primary);color:var(--text-on-primary)}.btn-secondary{border:2px solid var(--border-primary);color:var(--border-primary);background:transparent}.cta .btn-secondary{border-color:var(--text-on-primary);color:var(--text-on-primary)}/* Cards */.service-card{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);transition:transform var(--transition-fast)}.service-card:hover{transform:translateY(-6px)}/* Hero */.hero-lead{color:var(--text-muted)}.hero-logo{width:100%;max-width:100%;height:auto;display:block}/* Process steps */.process-steps li{display:flex;flex-direction:column;gap:0.5rem}.step-number{font-weight:700;font-size:1.5rem;color:var(--accent-primary)}.process-steps strong{color:var(--text-base);font-size:1.1rem}.process-steps p{margin:0;color:var(--text-muted)}/* Trust points */.trust-item{padding:var(--spacing-sm)}.trust-item strong{display:block;font-size:1.25rem;color:var(--accent-primary)}/* Value cards */.value-grid > div{padding:var(--spacing-md)}.value-grid strong{display:block;margin-bottom:0.5rem;font-size:1.05rem;color:var(--text-base)}.value-grid p{margin:0;color:var(--text-muted);font-size:0.95rem}/* Footer */.footer-info p,.footer-links p{margin:0.5rem 0;font-size:0.9rem;line-height:1.6}.footer-info strong{font-size:1.1rem}.footer-links a{color:var(--text-footer);text-decoration:none;transition:color var(--transition-fast)}.footer-links a:hover{color:var(--text-on-primary)}.footer-copyright{margin-top:var(--spacing-sm);font-size:0.85rem;opacity:0.85}/* Logo responsive */@media (max-width:768px){.site-logo{margin-bottom:var(--spacing-lg)}.site-logo img{max-width:220px}}/* ================= SITE-SPECIFIC STYLES ================= *//* Styles unique to EduPrint Solutions — this file overrides everything above *//* If adding a style that's reusable across sites,put it in components.css instead *//* Cookie Notice */.cookie-notice{position:fixed;bottom:0;left:0;right:0;background:rgba(20,23,26,0.98);backdrop-filter:blur(20px);border-top:1px solid rgba(120,220,160,0.2);padding:20px;z-index:999999;box-shadow:0 -4px 20px rgba(0,0,0,0.5);transform:translateY(100%);opacity:0;transition:transform 0.4s cubic-bezier(0.4,0,0.2,1),opacity 0.4s cubic-bezier(0.4,0,0.2,1)}.cookie-notice.visible{transform:translateY(0);opacity:1}.cookie-notice.hidden{display:none}.cookie-notice-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.cookie-notice-content{flex:1;min-width:300px}.cookie-notice-content p{color:#e6f4ef;font-size:0.95rem;line-height:1.6;margin:0 0 8px 0;font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.cookie-notice-content a{color:#1dd1a1;text-decoration:underline;transition:opacity 0.3s ease}.cookie-notice-content a:hover{opacity:0.8}.cookie-notice-actions{display:flex;gap:12px;flex-wrap:wrap}.cookie-notice-btn{padding:12px 24px;border-radius:8px;font-weight:600;font-size:0.9rem;cursor:pointer;transition:all 0.3s ease;border:none;font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;text-transform:uppercase;letter-spacing:0.5px}.cookie-notice-btn-accept{background:linear-gradient(135deg,#1dd1a1,#10ac84);color:#0b1a14;box-shadow:0 4px 12px rgba(29,209,161,0.3)}.cookie-notice-btn-accept:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(29,209,161,0.4)}.cookie-notice-btn-reject{background:rgba(230,244,239,0.1);color:#e6f4ef;border:1px solid rgba(230,244,239,0.3)}.cookie-notice-btn-reject:hover{background:rgba(230,244,239,0.15);border-color:rgba(230,244,239,0.5)}.cookie-notice-btn-settings{background:transparent;color:#1dd1a1;border:1px solid rgba(29,209,161,0.4)}.cookie-notice-btn-settings:hover{background:rgba(29,209,161,0.1);border-color:rgba(29,209,161,0.6)}@media (max-width:768px){.cookie-notice{padding:16px}.cookie-notice-container{flex-direction:column;align-items:stretch;gap:20px}.cookie-notice-content{min-width:100%}.cookie-notice-actions{width:100%}.cookie-notice-btn{flex:1;text-align:center}}.cookie-notice-btn:focus{outline:2px solid #1dd1a1;outline-offset:2px}@media print{.cookie-notice{display:none !important}}