/* =========================================================
   GULDORII WEBSITE TYPOGRAPHY + VISUAL STYLE
   Based on the existing working Guldorii website.
   This file changes presentation only; it does not change JS/functionality.
   ========================================================= */

/* =========================================================
   GLOBAL / BASE
   ========================================================= */
html { scroll-behavior: smooth; }

body,
body * {
    font-family: "Baloo 2", sans-serif;
}

body {
    margin: 0;
    background: #ffffff;
    color: #111827;
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

p, li, a, button, input, select, textarea {
    font-family: "Baloo 2", sans-serif;
}

/* =========================================================
   HEADER
   ========================================================= */
.guldorii-header {
    padding: 16px 28px;
    background: rgba(20, 20, 20, .90);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 4px 20px rgba(0,0,0,.15);
}

.guldorii-name {
    font-family: "Baloo 2", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0;
}

.guldorii-nav a {
    font-family: "Baloo 2", sans-serif;
    font-size: 17px;
    font-weight: 600;
}

/* =========================================================
   HERO
   ========================================================= */
.guldorii-hero,
.hero-slide,
.hero-content {
    min-height: 700px;
}

.hero-content h1 {
    font-family: "Baloo 2", sans-serif;
    font-size: clamp(42px, 5vw, 68px) !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    letter-spacing: -.3px;
}

.hero-content p {
    font-size: 19px !important;
    line-height: 1.65 !important;
    max-width: 760px;
}

.hero-content a {
    font-size: 16px !important;
    font-weight: 700 !important;
}

.hero-empty h1 {
    font-size: 40px !important;
}

.hero-empty p {
    font-size: 17px !important;
}

/* =========================================================
   SERVICES
   ========================================================= */
.services-section {
    padding: 78px 20px 88px;
    background: #fff2fb;
}

.services-heading h2 {
    color: #d63384;
    font-size: 40px !important;
    font-weight: 800;
    line-height: 1.2;
}

.services-heading p {
    color: #5f6673;
    font-size: 17px !important;
    line-height: 1.7;
}

.public-service-card {
    padding: 30px 28px 28px;
    border-radius: 18px;
    border: 1px solid #f3d8e9;
    box-shadow: 0 8px 24px rgba(218,91,159,.10);
}

.public-service-icon {
    width: 52px;
    height: 52px;
    font-size: 26px;
}

.public-service-title {
    color: #111827;
    font-size: 21px !important;
    font-weight: 800;
    line-height: 1.3;
}

.public-service-description {
    color: #333b48;
    font-size: 16px !important;
    line-height: 1.65;
}

.public-service-items {
    gap: 5px 24px;
}

.public-service-item {
    color: #1f2937;
    font-size: 14px !important;
    line-height: 1.55;
}

.public-service-item::before {
    color: #1683c7;
    font-size: 9px;
}

/* =========================================================
   STATS
   ========================================================= */
.guldorii-stats {
    padding: 48px 20px;
    background: linear-gradient(135deg, #fff0fb 0%, #f8ddff 100%);
}

.guldorii-stats-inner {
    max-width: 900px;
    gap: 18px;
}

.guldorii-stat-card {
    min-height: 125px;
    padding: 20px 16px;
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(190,80,190,.12);
}

.guldorii-stat-icon {
    width: 42px;
    height: 42px;
    margin-bottom: 8px;
    font-size: 21px;
}

.guldorii-stat-number {
    color: #e83e9d;
    font-size: 22px;
    font-weight: 800;
}

.guldorii-stat-label {
    margin-top: 3px;
    color: #333b48;
    font-size: 14px;
}

/* =========================================================
   FEATURED PRODUCT
   ========================================================= */
.guldorii-featured {
    padding: 78px 20px 85px;
    background: #ffffff;
}

.guldorii-featured-heading h2 {
    color: #d63384;
    font-size: 34px !important;
    font-weight: 800;
}

.guldorii-featured-heading h2 span {
    color: #fd7e14;
}

.guldorii-featured-heading p {
    color: #5f6673;
    font-size: 16px !important;
    line-height: 1.7;
}

.guldorii-featured-content h3 {
    font-size: 24px !important;
    font-weight: 800;
}

.guldorii-featured-rating span {
    font-size: 16px;
}

.guldorii-featured-rating small {
    font-size: 13px;
}

.guldorii-featured-content p {
    color: #475569;
    font-size: 16px !important;
    line-height: 1.7;
}

.guldorii-featured-price {
    font-size: 21px;
}

.guldorii-featured-price del {
    font-size: 13px;
}

.guldorii-featured-button {
    font-size: 15px !important;
    font-weight: 700;
}

/* =========================================================
   GALLERY
   ========================================================= */
.guldorii-gallery {
    padding: 82px 20px 90px;
    background: #ffffff;
}

.guldorii-gallery-heading {
    margin-bottom: 38px;
}

.guldorii-gallery-heading h2 {
    color: #d63384;
    font-size: 40px !important;
    font-weight: 800;
    line-height: 1.2;
}

.guldorii-gallery-heading p {
    color: #5f6673;
    font-size: 17px !important;
    line-height: 1.7;
}

.guldorii-gallery-filters {
    gap: 9px;
    margin-bottom: 35px;
}

.guldorii-gallery-filter {
    padding: 8px 16px;
    border-radius: 8px;
    font-family: "Baloo 2", sans-serif;
    font-size: 15px !important;
    font-weight: 600;
}

.guldorii-gallery-filter.is-active {
    background: #111827;
    color: #ffffff;
    border-color: #111827;
}

.guldorii-gallery-filter:hover {
    background: #f3e8ff;
    color: #111827;
}

.guldorii-gallery-card.is-filter-hidden {
    display: none !important;
}

.guldorii-gallery-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.guldorii-gallery-card {
    border-radius: 15px;
    box-shadow: 0 8px 24px rgba(15,23,42,.08);
}

.guldorii-gallery-image-overlay span {
    font-size: 15px !important;
    font-weight: 600;
}

.guldorii-gallery-card-content {
    padding: 20px;
}

.guldorii-gallery-title {
    color: #1f2937;
    font-size: 21px !important;
    font-weight: 800;
}

.guldorii-gallery-category {
    font-size: 14px !important;
}

.guldorii-gallery-price {
    font-size: 16px !important;
}

.guldorii-gallery-whatsapp {
    font-size: 15px !important;
}

/* =========================================================
   GALLERY VIEWER
   ========================================================= */
.guldorii-gallery-viewer-header h3 {
    font-size: 22px !important;
}

/* =========================================================
   ABOUT
   ========================================================= */
.guldorii-about {
    padding: 82px 20px 65px;
    background: #fff4fc;
}

.guldorii-about-heading h2 {
    color: #d63384;
    font-size: 40px !important;
    font-weight: 800;
}

.guldorii-about-heading p {
    color: #5f6673;
    font-size: 17px !important;
    line-height: 1.7;
}

.guldorii-about-title {
    color: #1f2937;
    font-size: 34px !important;
    font-weight: 800;
}

.guldorii-about-subtitle {
    color: #ec4899;
    font-size: 15px !important;
}

.guldorii-about-description {
    color: #475569;
    font-size: 16px !important;
    line-height: 1.8;
}

.guldorii-about-button {
    font-size: 15px !important;
}

.guldorii-story-card h3 {
    color: #d63384;
    font-size: 19px !important;
}

.guldorii-story-card p {
    color: #475569;
    font-size: 14px !important;
    line-height: 1.75;
}

/* =========================================================
   OUR STORY
   ========================================================= */
.guldorii-our-story {
    padding: 75px 20px;
    background: #ffffff;
}

.guldorii-our-story-heading h2 {
    color: #d63384;
    font-size: 38px !important;
    font-weight: 800;
}

.guldorii-our-story-heading p {
    color: #5f6673;
    font-size: 16px !important;
}

.guldorii-our-story-card {
    padding: 48px;
    background: #fff4fc;
    border-radius: 16px;
}

.guldorii-our-story-label {
    color: #ec4899;
    font-size: 14px !important;
    font-weight: 800;
}

.guldorii-our-story-content h3 {
    color: #1f2937;
    font-size: 30px !important;
    font-weight: 800;
}

.guldorii-our-story-content p {
    color: #475569;
    font-size: 16px !important;
    line-height: 1.8;
}

/* =========================================================
   OUR VALUES
   ========================================================= */
.guldorii-values {
    padding: 78px 20px 88px;
    background: #fff4fc;
}

.guldorii-values-heading h2 {
    color: #e548b9;
    font-size: 38px !important;
    font-weight: 800;
}

.guldorii-values-grid {
    gap: 24px;
}

.guldorii-value-card {
    min-height: 250px;
    padding: 30px 24px 34px;
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(190,70,170,.11);
}

.guldorii-value-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 20px;
    border-radius: 15px;
}

.guldorii-value-icon i {
    font-family: "Font Awesome 6 Free" !important;
    font-size: 30px !important;
    font-weight: 900;
}

.guldorii-value-card h3 {
    color: #111827;
    font-size: 21px !important;
    font-weight: 800;
}

.guldorii-value-card p {
    color: #5f6b7a;
    font-size: 15px !important;
    line-height: 1.7;
}

/* =========================================================
   CONTACT
   ========================================================= */
.guldorii-contact {
    padding: 85px 20px;
    background: #fff6fd;
}

.guldorii-contact-heading h2 {
    color: #d63384;
    font-size: 40px !important;
    font-weight: 800;
}

.guldorii-contact-heading p {
    color: #5f6673;
    font-size: 17px !important;
    line-height: 1.7;
}

.guldorii-contact-card {
    border-radius: 20px;
    box-shadow: 0 12px 32px rgba(15,23,42,.08);
}

.guldorii-contact-subtitle {
    color: #ec4899;
    font-size: 15px !important;
}

.guldorii-contact-title {
    color: #1f2937;
    font-size: 32px !important;
}

.guldorii-contact-description {
    color: #475569;
    font-size: 16px !important;
    line-height: 1.8;
}

.guldorii-contact-detail-label {
    font-size: 13px !important;
}

.guldorii-contact-detail-value {
    color: #334155;
    font-size: 16px !important;
    line-height: 1.65;
}

.guldorii-contact-button {
    font-size: 16px !important;
}

/* =========================================================
   FOOTER
   ========================================================= */
.guldorii-footer,
footer.guldorii-footer {
    width: 100%;
    margin: 0;
    padding: 58px 20px 0;
    background: linear-gradient(135deg, #3f0d61 0%, #7b1fa2 100%);
    color: #ffffff;
    font-family: "Baloo 2", sans-serif;
}

.guldorii-footer-inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.guldorii-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr 0.9fr 1fr 1.15fr;
    gap: 52px;
    align-items: start;
    padding-bottom: 42px;
}

.guldorii-footer-brand,
.guldorii-footer-column {
    min-width: 0;
}

.guldorii-footer-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.guldorii-footer-logo img {
    width: 36px;
    height: 36px;
    object-fit: contain;
    flex: 0 0 auto;
}

.guldorii-footer-logo h3 {
    margin: 0;
    color: #ffffff;
    font-size: 25px !important;
    font-weight: 800;
    line-height: 1.1;
}

.guldorii-footer-brand > p {
    max-width: 320px;
    margin: 0 0 20px;
    color: rgba(255,255,255,.92);
    font-size: 16px !important;
    line-height: 1.7;
}

.guldorii-footer-social {
    display: flex;
    align-items: center;
    gap: 12px;
}

.guldorii-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,.18);
    color: #ffffff;
    text-decoration: none;
    font-size: 16px !important;
    transition: transform .2s ease, background .2s ease;
}

.guldorii-footer-social a:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.28);
    color: #ffffff;
}

.guldorii-footer h4 {
    margin: 0 0 15px;
    color: #ffffff;
    font-size: 20px !important;
    font-weight: 800;
    line-height: 1.25;
}

.guldorii-footer-column ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.guldorii-footer-column li,
.guldorii-footer-column p,
.guldorii-footer-column a {
    color: rgba(255,255,255,.94);
    font-size: 16px !important;
    line-height: 1.65;
}

.guldorii-footer-column li {
    margin: 0 0 3px;
}

.guldorii-footer-column a {
    text-decoration: none;
}

.guldorii-footer-column a:hover {
    color: #ffffff;
    text-decoration: underline;
}

.guldorii-footer-contact p {
    margin: 0 0 13px;
}

.guldorii-business-hours {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 16px;
    padding: 18px;
    border-radius: 7px;
    background: rgba(255,255,255,.12);
}

.guldorii-business-hours strong {
    margin-bottom: 3px;
    font-size: 15px !important;
}

.guldorii-business-hours span {
    font-size: 15px !important;
    line-height: 1.5;
}

.guldorii-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 18px 0 20px;
    border-top: 1px solid rgba(255,255,255,.22);
}

.guldorii-footer-copyright {
    color: rgba(255,255,255,.95);
    font-size: 15px !important;
    line-height: 1.6;
}

.guldorii-footer-copyright a {
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
}

.guldorii-footer-copyright a:hover {
    text-decoration: underline;
}

.guldorii-footer-copyright span {
    font-size: inherit !important;
}

.guldorii-footer-legal {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 18px;
}

.guldorii-footer-legal a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #ffffff;
    font-size: 15px !important;
    text-decoration: none;
}

.guldorii-footer-legal a:hover {
    text-decoration: underline;
}

.guldorii-mobile-break {
    display: none;
}

/* =========================================================
   RESPONSIVE - TABLET
   ========================================================= */
@media (max-width: 991px) {
    .guldorii-header { padding: 13px 18px; }
    .guldorii-name { font-size: 30px; }
    .guldorii-nav a { font-size: 16px; }

    .services-heading h2,
    .guldorii-gallery-heading h2,
    .guldorii-about-heading h2,
    .guldorii-contact-heading h2 { font-size: 36px !important; }

    .guldorii-gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }

    .guldorii-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 30px;
    }

    .guldorii-footer-bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .guldorii-footer-legal {
        justify-content: flex-start;
    }

    .public-service-title { font-size: 20px !important; }
    .public-service-description { font-size: 15px !important; }
    .public-service-item { font-size: 14px !important; }

    .guldorii-about-title,
    .guldorii-contact-title { font-size: 30px !important; }
}

/* =========================================================
   RESPONSIVE - MOBILE
   ========================================================= */
@media (max-width: 600px) {
    body { font-size: 15px; }

    .guldorii-header { padding: 10px 12px; }
    .guldorii-logo { width: 42px; height: 42px; }
    .guldorii-name { font-size: 26px; }

    .guldorii-hero,
    .hero-slide,
    .hero-content { min-height: 560px; }

    .hero-content h1 { font-size: 38px !important; }
    .hero-content p { font-size: 16px !important; }

    .services-section,
    .guldorii-gallery,
    .guldorii-about,
    .guldorii-our-story,
    .guldorii-values,
    .guldorii-contact { padding-left: 14px; padding-right: 14px; }

    .services-heading h2,
    .guldorii-gallery-heading h2,
    .guldorii-about-heading h2,
    .guldorii-our-story-heading h2,
    .guldorii-values-heading h2,
    .guldorii-contact-heading h2 { font-size: 30px !important; }

    .services-heading p,
    .guldorii-gallery-heading p,
    .guldorii-about-heading p,
    .guldorii-contact-heading p { font-size: 15px !important; }

    .services-container:has(.public-service-card) { grid-template-columns: 1fr; }
    .public-service-card { padding: 25px 20px; }
    .public-service-title { font-size: 20px !important; }
    .public-service-description { font-size: 15px !important; }
    .public-service-item { font-size: 14px !important; }

    .guldorii-gallery-grid { grid-template-columns: 1fr; gap: 18px; }
    .guldorii-gallery-title { font-size: 20px !important; }

    .guldorii-footer {
        padding: 45px 16px 0;
    }

    .guldorii-footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        padding-bottom: 32px;
    }

    .guldorii-footer-brand > p {
        max-width: 100%;
    }

    .guldorii-footer-bottom {
        gap: 18px;
        padding: 18px 0 22px;
    }

    .guldorii-footer-legal {
        width: 100%;
        justify-content: flex-start;
        gap: 12px 18px;
    }

    .guldorii-mobile-break {
        display: block;
    }

    .guldorii-values-grid { grid-template-columns: 1fr; }

    .guldorii-about-item,
    .guldorii-about-item.reverse { grid-template-columns: 1fr; }
    .guldorii-about-title,
    .guldorii-contact-title { font-size: 27px !important; }
    .guldorii-about-description,
    .guldorii-contact-description { font-size: 15px !important; }

    .guldorii-our-story-card { padding: 30px 22px; }
    .guldorii-our-story-content h3 { font-size: 25px !important; }
    .guldorii-our-story-content p { font-size: 15px !important; }

    .guldorii-stat-number { font-size: 20px; }
    .guldorii-stat-label { font-size: 13px; }

    .guldorii-featured-heading h2 { font-size: 30px !important; }
    .guldorii-featured-heading p,
    .guldorii-featured-content p { font-size: 15px !important; }
    .guldorii-featured-content h3 { font-size: 22px !important; }

    .guldorii-footer p,
    .guldorii-footer li,
    .guldorii-footer a,
    .guldorii-footer span { font-size: 15px !important; }
}