/*!
 * Theme Name:  Kike Arnaiz
 * Theme URI:   https://github.com/kike-arnaiz
 * Author:      Kike Arnaiz
 * Author URI:  https://kike-arnaiz.com
 * Description: A clean, accessible, and SEO-optimized WordPress theme built with semantic HTML5, proper heading hierarchy, WCAG-friendly contrast, and crawlable markup.
 * Version:     1.0.0
 * Requires at least: 6.0
 * Tested up to: 6.5
 * Requires PHP: 8.0
 * License:     GNU General Public License v2 or later
 * License URI: https://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: kike-arnaiz
 * Tags:        accessibility, seo, responsive, custom-menu, featured-images, translation-ready
 */

/* =============================================================================
   CSS Custom Properties (Design Tokens)
   ============================================================================= */
:root {
    /* Colors – WCAG AA compliant (min 4.5:1 contrast on white) */
    --color-primary:        #1a5276; /* contrast on white: 7.2:1 ✓ */
    --color-primary-hover:  #154360;
    --color-white:          #ffffff;

    /* Typography */
    --font-base:      'Manrope', sans-serif;
    --font-heading: 'Playfair Display', serif;
    --font-size-base: 1.5rem;       /* 24px */
    --font-size-sm:   1rem;   /* 16px */
    --font-size-md:   1.125rem;   /* 18px */
    --font-size-lg:   1.5rem;   /* 24px */
    --font-size-xl:   1.75rem;    /* 28px */
    --font-size-xxl:   1.875rem;    /* 30px */
    --font-size-xxxl:   2rem;    /* 32px */
    --line-height-body:    1.4;
    --line-height-heading: 1.15;

    /* Spacing */
    --space-base:  0.25rem;
    --space-xs:  0.25rem;
    --space-sm:  0.5rem;
    --space-md:  1rem;
    --space-lg:  1.5rem;
    --space-xl:  2rem;

    /* Breakpoints */
    --breakpoint-mobile:    767px;
    --breakpoint-tablet: 1024px;
    --breakpoint-desktop:    1600px;
}

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

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
    font-size: 0.9375vw;
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    line-height: var(--line-height-body);
    letter-spacing: 0.03rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}
body.popup-open {
    overflow: hidden;
}

@media only screen and (min-width: 1600px) {
    html {
        /*font-size:0.834vw;*/
        font-size: 0.734vw;
    }
}

@media only screen and (min-width: 1025px) and (max-width: 1599px) {
    html {
        font-size: 0.834vw;
    }
}

@media only screen and (max-width: 1024px) {
    html {
        font-size: 0.9375vw;
    }
}

@media only screen and (max-width: 767px) {
    html {
        font-size: 2.7513vw;
    }
}


/* =============================================================================
   Skip Link – Accessibility
   ============================================================================= */
.skip-link {
    position: absolute;
    top: -100%;
    left: var(--space-md);
    z-index: 9999;
    padding: var(--space-sm) var(--space-lg);
    background: var(--color-primary);
    color: var(--color-white);
    font-weight: 700;
    font-size: var(--font-size-sm);
    text-decoration: none;
}

.skip-link:focus {
    top: var(--space-md);
}



/* =============================================================================
   LOADER STYLE
   ============================================================================= */
.loader{
    position:fixed;
    inset:0;
    background:#000;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:9999;
}
.loader-text{
    font-family: 'Alumni Sans', sans-serif;
    font-size: 6.875rem;
    font-weight: 700;
    color: #D97709;
    text-transform: uppercase;
    opacity:0;
    transform:translateY(0.625rem);
}

/* Initial reveal */
.reveal-on-load{
    opacity:0;
    transform:translateY(0.875rem);
}

/* =============================================================================
   Focus Styles – WCAG 2.1 AA
   ============================================================================= */
:focus-visible {
    outline-offset: 0.188rem;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline-offset: 0.188rem;
}


/* =============================================================================
   Typography
   ============================================================================= */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: 700;
    line-height: var(--line-height-heading);
    color: var(--color-primary);
    margin-bottom: var(--space-md);
}

h1 { font-size: var(--font-size-xxxl); }
h2 { font-size: var(--font-size-xxl); }
h3 { font-size: var(--font-size-xl); }
h4 { font-size: var(--font-size-lg); }
h5 { font-size: var(--font-size-md); }
h6 { font-size: var(--font-size-sm); }


a {
    color: var(--color-primary);
    text-decoration: underline;
    text-underline-offset: 0.188rem;
}

a:hover {
    color: var(--color-primary-hover);
}

strong, b { font-weight: 700; }
em, i     { font-style: italic; }

abbr[title] {
    text-decoration: underline dotted;
    cursor: help;
}

blockquote {
    border-left: 0.25rem solid var(--color-primary);
    padding: var(--space-md) var(--space-xl);
    margin: var(--space-xl) 0;
    font-size: var(--font-size-lg);
}

blockquote cite {
    display: block;
    margin-top: var(--space-sm);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: 700;
    color: var(--color-primary);
}

code, kbd, samp {
    font-size: 0.9rem;
    padding: 0.125rem 0.375rem;
}

pre {
    font-size: var(--font-size-sm);
    color: #e8eaf6;
    padding: var(--space-xl);
    overflow-x: auto;
    margin-bottom: var(--space-xl);
}

pre code {
    background: transparent;
    border: none;
    padding: 0;
    color: inherit;
}

hr {
    border: none;
}

/* =============================================================================
   Lists
   ============================================================================= */
ul, ol {
    padding-left: var(--space-xl);
    margin-bottom: var(--space-lg);
}

li {
    margin-bottom: var(--space-xs);
    line-height: var(--line-height-body);
}

/* =============================================================================
   Images & Media
   ============================================================================= */
img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height: auto;
}

figure {
    margin: var(--space-xl) 0;
}

figcaption {
    margin-top: var(--space-sm);
    font-size: var(--font-size-sm);
    text-align: center;
    font-style: italic;
}

/* =============================================================================
   Tables
   ============================================================================= */
table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: var(--space-xl);
    font-size: var(--font-size-sm);
}

th, td {
    padding: var(--space-sm) var(--space-md);
    text-align: left;
}


/* =============================================================================
   Forms
   ============================================================================= */
label {
    display: block;
    font-weight: 600;
    font-size: var(--font-size-sm);
    margin-bottom: var(--space-xs);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
textarea,
select {
    width: 100%;
    padding: var(--space-sm) var(--space-md);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
}

textarea {
    resize: vertical;
    min-height: 7.5rem;
}

button,
input[type="submit"],
input[type="reset"] {
    cursor: pointer;
    font-family: var(--font-heading);
    font-size: var(--font-size-base);
    font-weight: 700;
}


/* =============================================================================
   Site Header
============================================================================= */
.kike-arnaiz-site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 1.313rem;
    transform: translateY(0);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
    z-index: 99;
}
.popup-open .kike-arnaiz-site-header {
    z-index: initial;
}
.kike-arnaiz-site-header.sticky-header {
    background-color: rgba(15, 13, 12, 0.9);
    padding: 0.813rem 0;
}
.kike-arnaiz-site-header.remove-header {
    /*top: -100%;*/
    transform: translateY(-100%);
}
.kike-arnaiz-site-header-inner {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.kike-arnaiz-site-title,
.kike-arnaiz-site-title a {
    font-family: 'Alumni Sans', sans-serif;
    font-size: 3.125rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    color: var(--color-white);
}
.kike-arnaiz-primary-nav .menu {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    /*column-gap: 3.125rem;*/
    margin: 0;
    padding: 0;
    list-style: none;
}
.kike-arnaiz-primary-nav .menu li {
    position: relative;
    list-style: none;
    margin: 0;
}
.kike-arnaiz-primary-nav .menu > li.button {
    margin-left: 1.25rem;
}
.kike-arnaiz-primary-nav .menu a {
    font-family: var(--font-base);
    font-weight: 700;
    font-size: 1rem;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--color-white);
    letter-spacing: 0.08rem;
    display: flex;
    flex-flow: wrap;
    /*transition: all 0.3s ease 0s;*/
}
.kike-arnaiz-primary-nav .menu > .menu-item:not(.button) > a {
    padding: 1rem 1.25rem;
}
/*.kike-arnaiz-primary-nav .menu > li.menu-parent-item > a {
    padding: 1rem 2.5rem;
    background-color: #010302;
    border-radius: 0.625rem 0.625rem 0 0;
}*/
.kike-arnaiz-primary-nav .menu > li:not(.button):hover > a {
    /*padding: 1rem 2.5rem;*/
    background-color: #010302;
    border-radius: 0.625rem 0.625rem 0 0;
}
.kike-arnaiz-primary-nav .menu > li:not(.button):not(.menu-parent-item):hover > a {
    border-radius: 0.625rem;
}
.sticky-header .kike-arnaiz-primary-nav .menu > li.menu-parent-item:hover > a::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 0.825rem;
    background-color: #010302;
}
.sticky-header .menu-item:hover .sub-menu {
    top: calc(100% + 0.9rem);
}
/*.kike-arnaiz-primary-nav .menu > .menu-item:hover > a {
    background-color: #010302;
    border-radius: 0.625rem 0.625rem 0 0;
}*/
.sub-menu {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: calc(100% + 2rem);
    left: 0;
    width: 28.813rem;
    padding: 2.5rem 0;
    background-color: rgba(0, 0, 0, 0.9);
    border-radius: 0 0.625rem 0.625rem 0.625rem;
    margin: 0;
    transition: all 0.3s ease 0s;
}
.kike-arnaiz-hmbrg-icon {
    display: none;
}
.menu-label-wrapper .arrow {
    display: none;
}
.menu-item:hover .sub-menu {
    visibility: visible;
    opacity: 1;
    top: 100%;
}
.sub-menu .menu-item:not(:first-child) {
    margin-top: 1.563rem;
}
.sub-menu .menu-item a {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    column-gap: 1.25rem;
    padding: 0 2.5rem;
}
.sub-menu .menu-item a:hover {
    color: #D97709;
}
.sub-menu .menu-item .menu-thumbnail {
    display: flex;
    flex-flow: wrap;
    width: 8.875rem;
    height: 5rem;
    border-radius: 0.625rem;
    overflow: hidden;
}
.sub-menu .menu-item .menu-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sub-menu .menu-label-wrapper {
    display: flex;
    flex-flow: wrap;
    width: calc(100% - 11rem);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.3;
    text-transform: capitalize;
    letter-spacing: 2%;
}
.kike-arnaiz-primary-nav .menu .button a {
    display: inline-flex;
    flex-flow: wrap;
    align-items: center;
    gap: 0.156rem;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--color-white);
    padding: 1rem 2.5rem;
    background-color: rgba(217, 119, 9, 1);
    border: rgba(217, 119, 9, 1);
    border-radius: 31.25rem;
}
.kike-arnaiz-primary-nav .menu .button a:hover {
    background-color: #010302;
}
.kike-arnaiz-primary-nav .menu .button:last-child {
    display: none;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-site-header {
        padding: 0.813rem 0;
    }
    .kike-arnaiz-site-header .kike-arnaiz-container {
        max-width: 100%;
    }
    .kike-arnaiz-site-branding {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 3.625rem;
        align-items: center;
        padding: 0 1.563rem;
    }
    .kike-arnaiz-hmbrg-icon {
        display: flex;
        width: 3.625rem;
        height: 1.125rem;
    }
    .kike-arnaiz-hmbrg-icon a {
        display: flex;
        width: 3.625rem;
        height: 1.125rem;
    }
    .kike-arnaiz-hmbrg-icon svg {
        width: 100%;
        height: 100%;
    }
    .kike-arnaiz-primary-nav {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }
}



/* =============================================================================
   Main Content
============================================================================= */
.kike-arnaiz-container {
    position: relative;
    max-width: calc(100% - 7.5rem);
    width: 100%;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
    padding: 0 0.5rem;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-container {
        max-width: calc(100% - 3rem);
    }
}


/* =============================================================================
   Hero Style
============================================================================= */
#fullpage {
  position: relative;
  width: 100%;
}
.kike-arnaiz-hero-wrapper {
    position: relative;
    min-height: 100vh;
    padding-bottom: 10.825rem;
    display: flex;
    flex-flow: wrap;
    align-items: flex-end;
}
.kike-arnaiz-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}
.kike-arnaiz-hero-overlay::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.kike-arnaiz-hero-overlay img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.kike-arnaiz-hero-inner {
    max-width: 66.875rem;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
}
.kike-arnaiz-hero-title {
    font-family: var(--font-heading);
    font-size: 6.875rem;
    line-height: 1;
    color: var(--color-white);
    letter-spacing: 0.045rem;
    margin-bottom: 1.875rem;
}
.kike-arnaiz-hero-description,
.kike-arnaiz-hero-description p {
    font-size: 1.5rem;
    line-height: 1.5;
    letter-spacing: 0.045rem;
    color: var(--color-white);
}
.kike-arnaiz-hero-actions {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 1.875rem;
}
.kike-arnaiz-btn {
    position: relative;
    display: inline-flex;
    flex-flow: wrap;
    align-items: center;
    gap: 0.625rem;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--color-white);
    padding: 1rem 2.5rem;
    border: 0.063rem solid #ffffff;
    border-radius: 31.25rem;
    transition: all 0.3s ease 0s;
}
.kike-arnaiz-btn:hover {
    color: #D97709;
    background-color: var(--color-white);
}
.kike-arnaiz-button-icon svg {
    width: 1.688rem;
}
.kike-arnaiz-btn:hover .kike-arnaiz-button-icon svg path {
    stroke: #D97709;
}
.kike-arnaiz-hero-actions .kike-arnaiz-btn:first-child {
    background-color: #D97709;
    border-color: #D97709;
}
.kike-arnaiz-hero-actions .kike-arnaiz-btn:first-child:hover {
    background-color: rgba(15, 13, 12, 0.9);
    border-color: rgba(15, 13, 12, 0.9);
    color: var(--color-white);
}
.kike-arnaiz-hero-actions .kike-arnaiz-btn:first-child:hover .kike-arnaiz-button-icon svg path {
    stroke: var(--color-white);
}
.kike-arnaiz-hero-popup-video-button {
    position: absolute;
    top: 100%;
    right: 0.5rem;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    gap: 0.313rem;
    font-family: var(--font-base);
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: 0.056rem;
    color: var(--color-white);
    text-decoration: none;
    text-transform: uppercase;
}
.kike-arnaiz-hero-popup-video-button:hover {
    color: var(--color-white);
}
.kike-arnaiz-hero-popup-video-button .kike-arnaiz-video-thumb {
    position: relative;
    display: flex;
    width: 4.875rem;
    height: 4.875rem;
    border-radius: 100%;
    border: 0.375rem solid rgba(255, 255, 255, 0.5);
    overflow: hidden;
    z-index: 1;
}
.kike-arnaiz-hero-popup-video-button .kike-arnaiz-video-thumb::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.75rem;
    height: 1.75rem;
    background-image: url(assets/img/play-button.svg);
    background-repeat: no-repeat;
    background-size: 1.75rem 1.75rem;
    transform: translate(-50%, -50%);
    z-index: 1;
}
.kike-arnaiz-hero-popup-video-button .kike-arnaiz-video-thumb::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
}
.kike-arnaiz-hero-popup-video-button .kike-arnaiz-video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.kike-arnaiz-video-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.3);
    display: none;
    z-index: 999;
}
.kike-arnaiz-video-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    width: calc(100% - 4.688rem);
    height: calc(100% - 5rem);
    border-radius: 0.625rem;
    overflow: hidden;
    transform: translate(-50%, -50%);
}
.kike-arnaiz-video-inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.kike-arnaiz-video-container.show {
    display: block;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-hero-wrapper {
        /*min-height: initial;*/
        padding-bottom: 4.11rem;
    }
    .kike-arnaiz-hero-inner {
        max-width: 100%;
        padding-top: 18.75rem;
    }
    .kike-arnaiz-hero-title {
        font-size: 3.3rem;
        line-height: 1.17;
        margin-bottom: 0.5rem;
    }
    .kike-arnaiz-hero-actions {
        gap: 2.238rem;
        margin-top: 2.875rem;
    }
    .kike-arnaiz-btn {
        width: 100%;
        justify-content: center;
        gap: 0.95rem;
        font-size: 1.5rem;
    }
    .kike-arnaiz-button-icon svg {
        width: 2.55rem;
    }
    .kike-arnaiz-hero-popup-video-button {
        position: relative;
        top: initial;
        right: initial;
        margin: 2.5rem auto 0;
        width: fit-content;
    }
}





/* =============================================================================
   Vission Style
============================================================================= */
.kike-arnaiz-vision-area {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
    background: linear-gradient(180deg, rgba(246, 241, 238, 0) 0%, rgba(246, 241, 238, 1) 100%);
}
.kike-arnaiz-vision-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}
.kike-arnaiz-vision-background::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(246, 241, 238, 0) 0%, #F6F1EE 100%);
}
.kike-arnaiz-vision-background::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35.438rem;
    background: linear-gradient(180deg, rgba(255, 253, 252, 0) 0%, rgba(255, 253, 252, 0.7) 100%);
}
.kike-arnaiz-vision-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.kike-arnaiz-vision-content-inner {
    max-width: 77.688rem;
    text-align: center;
    margin: 0 auto;
}
.kike-arnaiz-vision-content-inner h2 {
    font-size: 6rem;
    line-height: 1.1;
    color: rgba(42, 42, 42, 1);
    opacity: 0;
    margin-bottom: 0;
}
.fade-in .kike-arnaiz-vision-content-inner h2 {
    animation: fadeIn ease 3s forwards;
    -webkit-animation: fadeIn ease 3s forwards;
}
.fade-in .kike-arnaiz-vision-content-inner h2 span {
    font-style: italic;
}

@keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-moz-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-webkit-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-o-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-ms-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-vision-area {
        min-height: inherit;
        padding: 13.75rem 0;
    }
    .kike-arnaiz-vision-content-inner {
        max-width: 100%;
    }
    .kike-arnaiz-vision-content-inner h2 {
        font-size: 2.8rem;
        line-height: 1.39;
    }
}


/* =============================================================================
   About Section Style
============================================================================= */
.kike-arnaiz-about-area {
    position: relative;
	padding: 2.875rem 0 4.5rem;
    background-color: rgba(246, 241, 238, 1);
}
.kike-arnaiz-about-content-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 5.313rem;
    align-items: center;
    max-width: 87.5rem;
    margin: 0 auto;
}
.kike-arnaiz-about-expertise-wrapper {
    position: relative;
    display: flex;
    flex-flow: wrap;
}
.kike-arnaiz-experience {
    position: absolute;
    left: -3.125rem;
    top: 2.188rem;
    max-width: 13.4rem;
    background-color: rgba(217, 119, 9, 1);
    border-radius: 1.25rem;
    padding: 1.25rem 1.875rem;
    z-index: 1;
}
.kike-arnaiz-experience-year {
    font-family: 'Playfair Display', serif;
    font-weight: 500;
    font-size: 5rem;
    line-height: 0.76;
    letter-spacing: 0.1rem;
    color: rgba(255, 255, 255, 1);
}
.kike-arnaiz-experience-lebel {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.21;
    color: rgba(255, 255, 255, 1);
    letter-spacing: 0.045rem;
    margin-top: 0.725rem;
}
.kike-arnaiz-profile-picture img {
    width: 100%;
    height: auto;
}
.kike-arnaiz-about-title h3 {
    font-family: var(--font-base);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.66;
    letter-spacing: 0.063rem;
    text-transform: uppercase;
    color: rgba(217, 119, 9, 1);
    margin-bottom: 0;
}
.kike-arnaiz-about-title h2 {
    font-size: 6.375rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.128rem;
    text-transform: capitalize;
    color: rgba(42, 42, 42, 1);
    margin-bottom: 0.72rem;
}
.kike-arnaiz-about-description {
    margin-top: 0.825rem;
}
.kike-arnaiz-about-description p {
    font-size: 1.125rem;
    font-weight: 300;
    line-height: 2.125;
    letter-spacing: 0.023rem;
    color: rgba(42, 42, 42, 1);
}
.kike-arnaiz-about-description p:not(:first-child) {
    margin-top: 1.25rem;
}
.kike-arnaiz-counter-wrapper {
    display: grid;
    grid-template-columns: repeat(3, auto);
    grid-gap: 5.75rem;
    margin-top: 1.625rem;
}
.kike-arnaiz-count-number {
    font-family: var(--font-heading);
    font-weight: 500;
    font-size: 4.3rem;
    line-height: 7.1rem;
    letter-spacing: 0.075rem;
    color: rgba(217, 119, 9, 1);
}
.kike-arnaiz-count-lebel {
    font-size: 1.125rem;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.023rem;
    color: rgba(89, 92, 108, 1);
}
.kike-arnaiz-about-title.mobile {
    display: none;
}
.kike-arnaiz-client-carousel-wrapper {
    position: relative;
    width: 100%;
    margin-top: 8.438rem;
}
.kike-arnaiz-carousel-title h2 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 1.28rem;
    line-height: 1.26;
    text-transform: uppercase;
    letter-spacing: 0.225rem;
    text-align: center;
    color: rgba(42, 42, 42, 1);
    margin-bottom: 0;
}
.kike-arnaiz-carousel-outer {
    position: relative;
    width: 100%;
    margin-top: 4.063rem;
    overflow: hidden;
}
.kike-arnaiz-carousel-outer::before,
.kike-arnaiz-carousel-outer::after {
    content: '';
    position: absolute;
    top: 0;
    width: 17.188rem;
    height: 100%;          
    z-index: 2;
    pointer-events: none;
}
.kike-arnaiz-carousel-outer::before {
    left: 0;
    background: linear-gradient(90deg, rgba(246, 241, 238, 1) 0%, rgba(252, 249, 247, 0) 100%);
}
.kike-arnaiz-carousel-outer::after {
    right: 0;
    background: linear-gradient(90deg, rgba(252, 249, 247, 0) 0%, rgba(246, 241, 238, 1) 100%);
}
.kike-arnaiz-carousel-track {
  display: flex;
  align-items: center;
  gap: 7.1rem;
  width: max-content !important;
  will-change: transform;
  animation: ticker 25s linear infinite;

  /* 🔑 Force GPU integer pixel rendering */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}


/* Keep this as fallback — JS will override with exact px value */
@keyframes ticker {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-about-area {
        padding: 2.5rem 0 3.75rem;
    }
    .kike-arnaiz-about-content-inner {
        grid-template-columns: 100%;
        grid-gap: 1.2rem;
        max-width: 100%;
    }
    .kike-arnaiz-experience {
        display: none;
    }
    .kike-arnaiz-about-title.mobile {
        display: block;
    }
    .kike-arnaiz-about-title.desktop {
        display: none;
    }
    .kike-arnaiz-about-title h2 {
        font-size: 3.75rem;
    }
    .kike-arnaiz-about-title h3 {
        font-size: 1.5rem;
        line-height: 2.09;
        margin-bottom: 0;
    }
    .kike-arnaiz-about-description {
        margin-top: 0;
    }
    .kike-arnaiz-about-description p {
        font-size: 1.5rem;
        line-height: 1.625;
    }
    .kike-arnaiz-counter-wrapper {
        display: none;
    }
    .kike-arnaiz-client-carousel-wrapper {
        margin-top: 1.875rem;
    }
    .kike-arnaiz-carousel-title {
        max-width: 24.5rem;
        margin: 0 auto;
    }
    .kike-arnaiz-carousel-title h2 {
        font-size: 1.5rem;
        line-height: 1.5;
    }
    .kike-arnaiz-carousel-track {
        column-gap: 3rem;
    }
    .kike-arnaiz-carousel-outer::before, 
    .kike-arnaiz-carousel-outer::after {
        display: none;
    }
}



/* =============================================================================
   Photography Section Style
============================================================================= */
.kike-arnaiz-photography-area {
    position: relative;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    background-color: rgba(246, 241, 238, 1);
    padding: 3.75rem 0 9.75rem;
}
.kike-arnaiz-photography-content-inner {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    grid-gap: 4.375rem;
}
.kike-arnaiz-photography-image-wrapper {
    position: relative;
}
.kike-arnaiz-photography-image-wrapper img {
    width: 100%;
    height: auto;
}
.kike-arnaiz-photography-content-wrapper {
    max-width: 45.125rem;
}
.kike-arnaiz-photography-content-inner h2 {
    font-size: 4.375rem;
    line-height: 1.14;
    color: rgba(42, 42, 42, 1);
    margin-bottom: 1.25rem;
}
.kike-arnaiz-photography-content-wrapper p {
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.8;
    color: rgba(89, 92, 108, 1);
}
.kike-arnaiz-photography-content-wrapper p strong {
    font-weight: 600;
    color: rgba(42, 42, 42, 1);
}
.kike-arnaiz-photography-content-wrapper .kike-arnaiz-btn {
    background-color: rgba(217, 119, 9, 1);
    border-color: rgba(217, 119, 9, 1);
    margin-top: 2.5rem;
}
.kike-arnaiz-photography-content-wrapper .kike-arnaiz-btn:hover {
    background-color: rgba(15, 13, 12, 0.9);
    border-color: rgba(15, 13, 12, 0.9);
    color: var(--color-white);
}
.kike-arnaiz-photography-content-wrapper .kike-arnaiz-btn:hover .kike-arnaiz-button-icon svg path {
    stroke: var(--color-white);
}
.kike-arnaiz-photography-content-inner .mobile {
    display: none;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-photography-area {
        padding: 2.813rem 0;
    }
    .kike-arnaiz-photography-content-inner {
        grid-template-columns: 100%;
        grid-gap: 1.375rem;
        text-align: center;
    }   
    .kike-arnaiz-photography-content-inner .mobile {
        font-size: 2.175rem;
        line-height: 1.33;
        display: block;
        margin: 0;
    }
    .kike-arnaiz-photography-content-inner .desktop {
        display: none;
    }
    .kike-arnaiz-photography-content-wrapper p {
        font-size: 1.6rem;
        line-height: 1.9;
    }
    .kike-arnaiz-photography-content-wrapper .kike-arnaiz-btn {
        margin-top: 1.375rem;
    }
}



/* =============================================================================
   Courses Section Style
============================================================================= */
.kike-arnaiz-courses-area {
    position: relative;
    min-height: 100vh;
    background-color: rgba(246, 241, 238, 1);
    padding-top: 5.625rem;
    display: flex;
    flex-flow: wrap;
    /*align-items: flex-end;*/
    /*overflow: hidden;*/
    z-index: 1;
}
.kike-arnaiz-courses-cloud {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 26.25rem;
    background: linear-gradient(180deg, rgba(255, 250, 244, 0) 0%, #FFFAF4 100%);
}
.kike-arnaiz-courses-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: wrap;
    align-items: flex-end;
    z-index: -1;
}
.kike-arnaiz-courses-overlay img {
    width: 100%;
    /*height: 100%;*/
    object-fit: fill;
}
.kike-arnaiz-courses-image {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: flex;
    flex-flow: wrap;
    align-items: flex-end;
    max-width: 37.5rem;
    /*max-height: 100%;*/
    transform: translateX(-50%);
}
.kike-arnaiz-courses-image img {
    position: relative;
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
}
.kike-arnaiz-courses-content-inner {
    position: relative;
    max-width: 106.25rem;
    width: 100%;
    padding-bottom: 3rem;
    margin: 0 auto;
}
.kike-arnaiz-title-wrapper {
    position: relative;
    max-width: 106.25rem;
    width: 100%;
    margin: 0 auto;
}
.kike-arnaiz-title-wrapper h2 {
    font-family: var(--font-base);
    font-weight: 800;
    font-size: 6.25rem;
    line-height: 0.5;
    color: #FFFFFF;
    text-transform: uppercase;
    margin: 0;
}
.outline-text {
    position: relative;
    font-family: 'Alumni Sans', sans-serif;
    font-size: 30.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -1%;
    line-height: 0.8;
    margin: 0;
    color: transparent;
    text-align: center;
    -webkit-text-stroke: 0.094rem var(--color-white);
    text-stroke: 0.094rem var(--color-white);
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .kike-arnaiz-courses-area {
        min-height: 50vh;
    }
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-courses-area {
        min-height: 37.5rem;
    }
    .kike-arnaiz-courses-content-inner {
        max-width: 100%;
        align-items: end;
        padding-bottom: 0;
    }
    .kike-arnaiz-title-wrapper {
        max-width: 100%;
    }
    .kike-arnaiz-title-wrapper h2 {
        font-size: 2.125rem;
        line-height: 1;
    }
    .outline-text {
        font-size: 8.6rem;
        letter-spacing: 3%;
        line-height: 1;
    }
    .kike-arnaiz-courses-cloud {
        height: 13.438rem;
    }
}



/* =============================================================================
   Courses Guide Section
============================================================================= */
.kike-arnaiz-courses-guide-area {
    position: relative;
    background-color: #FFFAF4;
    margin-top: -0.1rem;
    padding: 1.563rem 0 4.688rem;
    z-index: 1;
}
.kike-arnaiz-courses-guide-content-inner {
    max-width: 101.563rem;
    width: 100%;
    margin: 0 auto;
}
.kike-arnaiz-courses-guide-title-wrapper {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
}
.kike-arnaiz-courses-guide-title {
    max-width: 68.438rem;
}
.kike-arnaiz-courses-guide-title h2 {
    font-family: var(--font-base);
    font-size: 3.75rem;
    line-height: 1.16;
    color: #2A2A2A;
}
.kike-arnaiz-courses-guide-carousel-wrapper {
    position: relative;
    display: flex;
    flex-flow: wrap;
    margin-top: 0.938rem;
}
.kike-arnaiz-courses-guide-carousel {
    position: relative;
    max-width: 100%;
    width: 100%;
    overflow: hidden;
}
.kike-arnaiz-courses-guide-carousel-track {
    display: flex;
    flex-flow: nowrap;
    column-gap: 1.563rem;
    width: 100%;
}
.kike-arnaiz-courses-guide-carousel-track .owl-stage-outer {
    padding-left: 0.5rem;
}
.kike-arnaiz-courses-guide-carousel-track .owl-stage {
    display: flex;
    flex-flow: nowrap;
    padding: 2rem 0;
}
.kike-arnaiz-courses-guide-carousel-track .owl-item {
    margin-right: 1.8rem;
}
.kike-arnaiz-courses-guide-carousel-track .owl-nav {
    display: none;
}
.kike-arnaiz-guide-slide {
    position: relative;
    padding-top: 3.188rem;
    padding-left: 3.8rem;
    transition: all 0.3s ease;
}
.kike-arnaiz-guide-slide:hover {
    transform: scale(1.02) translateY(-0.313rem);
}
.kike-arnaiz-guide-slide:hover .kike-arnaiz-guide-slide-content h3 {
    color: #D97709;
}
.kike-arnaiz-guide-slide-container > a {
    display: block;
    text-decoration: none;
}
.kike-arnaiz-guide-slide-image {
    position: relative;
}
.kike-arnaiz-guide-slide-image img {
    width: 100%;
    height: auto;
}
.kike-arnaiz-guide-logo {
    position: absolute;
    top: -2.188rem;
    right: -1.5rem;
    width: 9.063rem;
    height: 9.375rem;
}
.kike-arnaiz-guide-logo img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}
.kike-arnaiz-guide-slide-content {
    margin-top: 1.25rem;
}
.kike-arnaiz-guide-slide-content h3 {
    font-family: var(--font-base);
    font-weight: 800;
    font-size: 1.7rem;
    line-height: 1.39;
    text-transform: uppercase;
    letter-spacing: 2%;
    color: #2A2A2A;
    margin-bottom: 1.25rem;
}
.kike-arnaiz-guide-slide-content .link {
    display: block;
    font-family: var(--font-base);
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.1;
    letter-spacing: 2%;
    color: #D97709;
    text-decoration: underline;
}
.kike-arnaiz-guide-slide:hover .kike-arnaiz-guide-slide-content .link {
    color: #2A2A2A;
}

/*Carousel Nav*/
.kike-arnaiz-guide-carousel-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2.5rem;
}
/*.kike-arnaiz-guide-carousel-nav button {
    position: relative;
    width: 4.875rem;
    height: 4.875rem;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: none;
    padding: 0.07rem;
    border-radius: 50%;
    overflow: hidden;
}*/
/*.kike-arnaiz-guide-carousel-nav button {
    position: relative;
    width: 4.875rem;
    padding: 0.063rem;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    overflow: hidden;
}*/
.kike-arnaiz-guide-carousel-nav button,
.kike-arnaiz-experience-carousel-nav button {
    position:relative;
    width: 4.875rem;
    height: 4.875rem;
    padding: 0.063rem;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    flex-shrink:0;
    border: none;
    background:transparent;
}
.kike-arnaiz-guide-carousel-nav .kike-arnaiz-guide-prev,
.kike-arnaiz-experience-carousel-nav .kike-arnaiz-project-prev {
    transform: rotate(180deg);
}
.kike-arnaiz-guide-carousel-nav button svg.ring-svg,
.kike-arnaiz-experience-carousel-nav button svg.ring-svg {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
   transform:rotate(-180deg); 
}
.ring-track{stroke: transparent;fill:none}
.ring-progress{
  fill:none;
  stroke: transparent;
  stroke-dasharray:0 180;
  stroke-linecap:round;
  transition:stroke-dasharray 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.kike-arnaiz-guide-carousel-nav button:hover .ring-progress,
.kike-arnaiz-experience-carousel-nav button:hover .ring-progress {
    stroke: #E9D3BA;
    stroke-dasharray: 180 180;
}
.arrow-icon2{
  position:relative;
  z-index:1;
  transform: translateX(-1.5rem);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
}
.kike-arnaiz-guide-carousel-nav button:hover .arrow-icon2,
.kike-arnaiz-experience-carousel-nav button:hover .arrow-icon2{
    transform: translateX(0);
}
.kike-arnaiz-guide-carousel-nav button:hover .arrow-icon2 svg path,
.kike-arnaiz-experience-carousel-nav button:hover .arrow-icon2 svg path {
    stroke: #E9D3BA;
}

@keyframes border {
  0% {
    box-shadow: 3.75rem -3.75rem 0 0.063rem #FFFAF4, -3.75rem -3.75rem 0 0.063rem #FFFAF4, -3.75rem 3.75rem 0 0.063rem #FFFAF4, 3.75rem 3.75rem 0 0.063rem #FFFAF4, 0 0 0 0.063rem #FFFAF4;
  }
  25% {
    box-shadow: 0 -7.813rem 0 0.063rem #FFFAF4, -3.75rem -3.75rem 0 0.063rem #FFFAF4, -60px 3.75rem 0 0.063rem #FFFAF4, 3.75rem 3.75rem 0 0.063rem #FFFAF4, 0 0 0 0.063rem #E9D3BA;
  }
  50% {
    box-shadow: 0 -7.813rem 0 0.063rem #FFFAF4, -7.813rem 0px 0 0.063rem #FFFAF4, -60px 3.75rem 0 0.063rem #FFFAF4, 3.75rem 3.75rem 0 0.063rem #FFFAF4, 0 0 0 0.063rem #E9D3BA;
  }
  75% {
    box-shadow: 0 -7.813rem 0 0.063rem #FFFAF4, -7.813rem 0px 0 0.063rem #FFFAF4, 0px 7.813rem 0 0.063rem #FFFAF4, 3.75rem 3.75rem 0 0.063rem #FFFAF4, 0 0 0 0.063rem #E9D3BA;
  }
  100% {
    box-shadow: 0 -7.813rem 0 0.063rem #FFFAF4, -7.813rem 0px 0 0.063rem #FFFAF4, 0px 7.813rem 0 0.063rem #FFFAF4, 7.5rem 2.5rem 0 0.063rem #FFFAF4, 0 0 0 0.063rem #E9D3BA;
  }
}

.kike-arnaiz-guide-carousel-nav svg {
    position: relative;
    width: 1.25rem;
    height: auto;
    z-index: 1;
}

.kike-arnaiz-course-features-wrapper {
    position: relative;
    max-width: 95rem;
    width: 100%;
    padding-top: 2.813rem;
    margin: 5.938rem auto 0;
}
.kike-arnaiz-course-features-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    max-width: 86.875rem;
    width: 100%;
    border-top: 0.063rem solid #F4E3D0;
    transform: translateX(-50%);
}
.kike-arnaiz-course-features {
    display: grid;
    grid-template-columns: repeat(4, auto);
    column-gap: 7rem;
}
.kike-arnaiz-feature-item {
    display: grid;
    grid-gap: 0.625rem;
    grid-template-rows: subgrid;
    grid-row: span 3;
}
.kike-arnaiz-feature-icon {
    width: 5rem;
    height: 5rem;
}
.kike-arnaiz-feature-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.kike-arnaiz-feature-item h4 {
    font-family: var(--font-base);
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.5625;
    letter-spacing: 2%;
    text-transform: uppercase;
    color: #8F8477;
    margin: 0;
}
.kike-arnaiz-feature-item p {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.7;
    color: #8F8477;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-courses-guide-title h2 {
        font-size: 1.563rem;
        line-height: 1.36;
        margin-bottom: 1.563rem;
    }
    .kike-arnaiz-guide-carousel-nav {
        display: none;
    }
    .kike-arnaiz-courses-guide-carousel-wrapper {
        padding-left: 0;
        margin-top: 0;
    }
    .kike-arnaiz-courses-guide-carousel-track .owl-stage-outer {
        padding-left: 0;
    }
    .kike-arnaiz-guide-slide {
        padding-left: 1.563rem;
    }
    .kike-arnaiz-courses-guide-carousel-track .owl-item {
        margin-right: 1.563rem;
    }
    .kike-arnaiz-guide-slide-content {
        display: grid;
        margin-top: 0.625rem;
    }
    .kike-arnaiz-guide-slide-content h3 {
        font-size: 0.875rem;
        line-height: 1.28;
        margin-bottom: 0.625rem;
    }
    .kike-arnaiz-guide-slide-content a {
        font-size: 0.875rem;
        line-height: 1.1;
    }
    .kike-arnaiz-course-features-wrapper {
        max-width: 100%;
        padding-top: 1.875rem;
        margin: 1.875rem 0 0;
    }
    .kike-arnaiz-course-features .owl-stage {
        display: flex;
        flex-flow: nowrap;
    }
    .kike-arnaiz-course-features .owl-item {
        margin-right: 2.5rem;
    }
}



/* =============================================================================
   Practice Section
============================================================================= */
.kike-arnaiz-practice-area {
    position: relative;
    padding: 22.5rem 0;
    display: flex;
    flex-flow: wrap;
    align-items: center;
	background-attachment: fixed;
    background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    overflow: hidden;
    z-index: 1;
}
.kike-arnaiz-practice-area::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: -1;
}
.kike-arnaiz-practice-inner h2 {
    font-family: var(--font-base);
    font-size: 4.688rem;
    line-height: 1.13;
    letter-spacing: -2%;
    color: var(--color-white);
    margin: 0;
}


@media screen and (max-width: 767px) {
    .kike-arnaiz-practice-area {
        min-height: 24.688rem;
        padding: 8.313rem 0;
    }
    .kike-arnaiz-practice-inner {
        text-align: center;
    }
    .kike-arnaiz-practice-inner h2 {
        font-size: 2.5rem;
        line-height: 1.1;
    }
}


/* =============================================================================
   Experience Section
============================================================================= */
.kike-arnaiz-experience-area {
    position: relative;
    /*padding: 5.313rem 0;*/
    padding: 10rem 0 5.313rem;
    background-color: #FFFAF4;
    overflow: hidden;
    z-index: 1;
}
.kike-arnaiz-experience-background {
    position: absolute;
    top: 10.813rem;
    left: 0;
    height: 43.75rem;
    width: 100%;
    z-index: -1;
}
.kike-arnaiz-experience-background img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}
.kike-arnaiz-experience-inner {
    position: relative;
    width: 100%;
}
.kike-arnaiz-experience-title {
    display: grid;
    grid-template-columns: 1fr 32.25rem;
    column-gap: 4.063rem;
    max-width: 101.563rem;
    width: 100%;
    margin: 0 auto;
}
.kike-arnaiz-experience-heading h2 {
    font-size: 5.625rem;
    line-height: 1.1;
    letter-spacing: -2%;
    color: #2A2A2A;
    margin: 0;
}
.kike-arnaiz-experience-subheading {
    align-self: end;
}
.kike-arnaiz-experience-subheading h4 {
    font-family: var(--font-base);
    font-weight: 400;
    font-size: 2rem;
    line-height: 1.3;
    color: #2A2A2A;
    letter-spacing: 2%;
    margin: 0;
}
.kike-arnaiz-experience-title-links {
    max-width: 101.563rem;
    width: 100%;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 3.438rem auto 0;
}
.kike-arnaiz-experience-title-links a {
    font-family: var(--font-base);
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.8;
    letter-spacing: 3%;
    text-transform: uppercase;
    color: #D97709;
    text-underline-offset: 0.15rem;
    text-decoration-thickness: 0.1rem;
}
.kike-arnaiz-projects-wrapper {
    position: relative;
    display: flex;
    flex-flow: wrap;
    justify-content: flex-end;
    margin-top: 1.875rem;
}
.kike-arnaiz-projects-carousel {
    position: relative;
    max-width: 100%;
    width: 100%;
    overflow: hidden;
}
.kike-arnaiz-projects-carousel:not(.owl-loaded) {
    display: flex;
    flex-flow: nowrap;
}
.kike-arnaiz-projects-carousel .owl-stage-outer {
    padding-left: 3.725rem;
}
.kike-arnaiz-projects-carousel .owl-stage {
    display: flex;
    flex-flow: nowrap;
}
.kike-arnaiz-projects-carousel .owl-item {
    margin-right: 3.725rem;
    padding-left: 0.6rem;
}
.kike-arnaiz-projects-carousel .owl-nav {
    display: none;
}
.kike-arnaiz-project-image {
    position: relative;
    padding: 40.063rem 2.188rem 2.188rem;
    border-radius: 1.25rem;
    overflow: hidden;
    z-index: 1;
}
.kike-arnaiz-project-image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: -1;
}
.kike-arnaiz-project-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}
.kike-arnaiz-project-details h3 {
    font-size: 3.75rem;
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -2%;
    color: var(--color-white);
    margin: 0;
}
.kike-arnaiz-project-info {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: flex-end;
    margin-top: 1.563rem;
}
.kike-arnaiz-project-link {
    text-align: right;
}
.kike-arnaiz-project-link a {
    display: inline-flex;
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 3%;
    text-decoration: none;
    color: #ffffff;
    text-transform: capitalize;
    padding: 0.625rem 1.875rem;
    background-color: #D97709;
    border-radius: 5.625rem;
}
.kike-arnaiz-project-link a:hover {
    background-color: var(--color-white);
    color: #2A2A2A;
}
.kike-arnaiz-project-price p {
    font-size: 1.25rem;
    line-height: 1;
    letter-spacing: 3%;
    color: var(--color-white);
    text-transform: capitalize;
}
.kike-arnaiz-project-price .price {
    font-family: var(--font-heading);
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.6;
    color: #D97709;
}
.kike-arnaiz-project-content-wrapper a {
    display: block;
    text-decoration: none;
}
.kike-arnaiz-project-description {
    padding: 1.25rem 2.188rem 0;
}
.kike-arnaiz-project-description p {
    font-size: 1.125rem;
    line-height: 1.6;
    letter-spacing: 2%;
    color: #2A2A2A;
}
.kike-arnaiz-project-description .link {
    display: inline-flex;
    font-family: var(--font-base);
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.7;
    color: #D97709;
    text-decoration: underline;
    text-underline-offset: 0.15rem;
    text-decoration-thickness: 0.1rem;
    margin-top: 0.625rem;
}


/*Project Nav*/
.kike-arnaiz-experience-carousel-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2.5rem;
}
.kike-arnaiz-experience-carousel-nav button {
    position: relative;
    width: 4.875rem;
    height: 4.875rem;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
    background-color: transparent;
/*    border-width: 0;
    border-style: solid;
    border-color: #E9D3BA;*/
    border: none;
    padding: 0.07rem;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease 0s;
}
.kike-arnaiz-experience-carousel-nav svg {
    position: relative;
    width: 1.25rem;
    height: auto;
    z-index: 1;
}
/*.kike-arnaiz-experience-carousel-nav button:hover {
    border-width: 0.063rem;
}*/

@media screen and (max-width: 767px) {
    .kike-arnaiz-experience-area {
        padding: 10rem 0 1.125rem;
    }
    .kike-arnaiz-experience-title {
        grid-template-columns: 100%;
    }
    .kike-arnaiz-experience-heading h2 {
        font-size: 2.125rem;
    }
    .kike-arnaiz-experience-subheading {
        margin-top: 0.625rem;
    }
    .kike-arnaiz-experience-subheading h4 {
        font-size: 1.125rem;
        line-height: 1.6;
    }
    .kike-arnaiz-projects-wrapper {
        margin-top: 4.063rem;
    }
    .kike-arnaiz-projects-carousel .owl-stage-outer {
        padding-left: 1.875rem;
    }
    .kike-arnaiz-projects-carousel .owl-item {
        margin-right: 1.875rem;
    }
    .kike-arnaiz-experience-title-links {
        display: none;
    }
    .kike-arnaiz-project-image {
        padding: 29rem 1.25rem 1.25rem;
        border-radius: 0.625rem;
    }
    .kike-arnaiz-project-details h3 {
        font-size: 1.875rem;
        line-height: 1.1;
    }
    .kike-arnaiz-project-info {
        margin-top: 0.938rem;
    }
    .kike-arnaiz-project-price p {
        font-size: 0.875rem;
    }
    .kike-arnaiz-project-price .price {
        font-size: 1.5rem;
    }
    .kike-arnaiz-project-link a {
        font-size: 0.875rem;
        padding: 0.313rem 1rem;
    }
    .kike-arnaiz-project-description {
        padding: 0.625rem 0.75rem 0;
    }
    .kike-arnaiz-project-description p {
        font-size: 0.875rem;
        line-height: 1.5;
    }
    .kike-arnaiz-project-description a {
        font-size: 1rem;
        line-height: 1.1;
        margin-top: 0.313rem;
    }
}


/* =============================================================================
   Testimonials Section
============================================================================= */
.kike-arnaiz-testimonials-area {
    position: relative;
    padding: 5rem 0 6.25rem;
    background-color: #FFFAF4;
    overflow: hidden;
}
.kike-arnaiz-testimonials-inner {
    width: 100%;
}
.kike-arnaiz-testimonial-title-wrapper {
    max-width: 80rem;
    text-align: center;
    margin: 0 auto;
}
.kike-arnaiz-testimonial-title-wrapper h4 {
    font-family: var(--font-base);
    font-weight: 800;
    font-size: 1.125rem;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 10%;
    color: #D97709;
    margin: 0;
}
.kike-arnaiz-testimonial-title-wrapper h2 {
    font-size: 5rem;
    line-height: 1;
    letter-spacing: 1%;
    color: #2A2A2A;
    margin: 0;
}
.kike-arnaiz-testimonial-carousel-wrapper {
    margin-top: 6.25rem;
}
.kike-arnaiz-testimonial-carousel {
    position: relative;
    display: flex;
    flex-flow: nowrap;
    width: 100%;
}
.kike-arnaiz-testimonial-carousel .owl-stage-outer {
    padding-left: 5.625rem;
}
.kike-arnaiz-testimonial-carousel .owl-stage {
    display: flex;
    flex-flow: nowrap;
}
.kike-arnaiz-testimonial-carousel .owl-item {
    margin-right: 5.313rem;
}
.kike-arnaiz-testimonial-slide {
    float: none;
}
.kike-arnaiz-testimonial-carousel .owl-item:hover .kike-arnaiz-testimonial-content {
    background: rgba(255, 255, 255, 1);
    box-shadow: -0.438rem 1.188rem 2.375rem 0.625rem rgba(162, 141, 116, 0.1);
}
.kike-arnaiz-testimonial-content {
    position: relative;
    padding: 2.813rem 2.813rem 2.5rem 4.375rem;
    background-color: #FAF3EA;
    border-radius: 1.25rem;
}
.kike-arnaiz-client-image {
    position: absolute;
    top: 2.5rem;
    left: -2.3rem;
    width: 5.75rem;
    height: 5.75rem;
    border-radius: 100%;
    overflow: hidden;
    border: 12px solid #FFFAF4;
}
.kike-arnaiz-client-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.kike-arnaiz-testimonial-info h3 {
    font-family: var(--font-base);
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 2.9;
    color: rgba(42, 42, 42, 1);
    margin: 0;
}
.client-rating {
    margin: 1.125rem 0;
}
.client-rating svg {
    max-width: 8.75rem;
    width: 100%;
    height: auto;
}
.client-message p {
    font-family: var(--font-base);
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.7;
    letter-spacing: 2%;
    color: rgba(42, 42, 42, 1);
}
.kike-arnaiz-testimonial-carousel .owl-nav {
    display: none;
}

@media screen and (max-width: 767px) {
    .kike-arnaiz-testimonial-carousel-wrapper {
        margin-top: 8.25rem;
    }
    .kike-arnaiz-testimonial-title-wrapper h4 {
        font-size: 1.5rem;
    }
    .kike-arnaiz-testimonial-title-wrapper h2 {
        font-size: 2.775rem;
        line-height: 1.2;
        letter-spacing: -2%;
    }
    .kike-arnaiz-testimonial-carousel .owl-stage-outer {
        padding-left: 2.813rem;
    }
    .kike-arnaiz-testimonial-carousel .owl-item {
        margin-right: 2.813rem;
    }
    .kike-arnaiz-client-image {
        top: -5rem;
        left: 50%;
        transform: translateX(-50%);
        width: 10rem;
        height: 10rem;
    }
    .kike-arnaiz-testimonial-content {
        padding: 6.063rem 2.563rem 1.875rem;
    }
    .kike-arnaiz-testimonial-info {
        text-align: center;
    }
    .kike-arnaiz-testimonial-info h3 {
        font-family: 'Oswald', sans-serif;
        font-size: 2.1rem;
        line-height: 1.6;
        text-transform: uppercase;
    }
    .client-rating {
        margin: 1.125rem 0;
    }
    .client-rating svg {
        margin: 0 auto;
    }
    .client-message p {
        font-weight: 300;
        font-size: 0.875rem;
        line-height: 1.9;
    }
}





/* =============================================================================
   Footer Area Style
============================================================================= */
.kike-arnaiz-site-footer {
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.kike-arnaiz-newsletter-wrapper {
    position: relative;
    background-color: #FFFAF4;
}
.kike-arnaiz-newsletter-wrapper::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 15.938rem;
    background: linear-gradient(0deg, #1E1F22 0%, rgba(30, 31, 34, 0.85) 47%, rgba(30, 31, 34, 0.378713) 73.15%, rgba(30, 31, 34, 0) 94.7%);
}
.kike-arnaiz-newsletter-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.kike-arnaiz-newsletter-background::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.8) 0%, rgba(102, 102, 102, 0) 100%);
}
.kike-arnaiz-newsletter-content-inner {
    position: relative;
    width: 100%;
    padding-top: 16.875rem;
    z-index: 2;
}
.kike-arnaiz-newsletter-form-wrapper {
    max-width: 56.875rem;
    text-align: center;
    margin: 0 auto;
}
.kike-arnaiz-newsletter-form-wrapper h2 {
    font-size: 3.75rem;
    letter-spacing: -1%;
    color: var(--color-white);
    box-shadow: 0px 0px 23.9px 0px rgba(0, 0, 0, 0.25);
    margin: 0;
}
.kike-arnaiz-newsletter-form-wrapper p {
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 2%;
    color: #FFFFFF;
}
.kike-arnaiz-newsletter-form {
    margin-top: 2.188rem;
}
.kike-arnaiz-newsletter-form .mc4wp-form-fields {
    position: relative;
}
.kike-arnaiz-newsletter-form .mc4wp-form-fields input[type="email"] {
    background-color: #FFFAF4;
    border: 1px solid #FFFAF4;
    box-shadow: none;
    padding: 1.25rem 0.313rem 1.25rem 1.875rem;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 400;
    font-size: 1.125rem;
    line-height: 1;
    letter-spacing: -2%;
    border-radius: 5rem;
}
.kike-arnaiz-newsletter-form .mc4wp-form-fields button[type="submit"] {
    position: absolute;
    top: 0.25rem;
    right: 0.313rem;
    padding: 1rem 1.25rem;
    background-color: #D97709;
    border: 1px solid #D97709;
    font-family: var(--font-base);
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1;
    color: #ffffff;
    border-radius: 5rem;
    height: 3.563rem;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
}
.kike-arnaiz-newsletter-form .mc4wp-form-fields button[type="submit"]:hover {
    background-color: #1E1F22;
    border-color: #1E1F22;
}
.kike-arnaiz-newsletter-page-link {
    position: relative;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    column-gap: 5rem;
    max-width: max-content;
    margin: 11.563rem auto 0;
}
.kike-arnaiz-newsletter-page-link a {
    font-family: var(--font-base);
    font-weight: 600;
    font-size: 1rem;
    line-height: 5.313;
    text-transform: uppercase;
    letter-spacing: 16%;
    text-decoration: none;
    color: #FFFFFF;
}
.kike-arnaiz-newsletter-page-link a:hover {
    color: #D97709;
}
.kike-arnaiz-copyright-wrapper {
    position: relative;
    background-color: #1E1F22;
    padding-bottom: 2.5rem;
    z-index: 1;
}
.kike-arnaiz-background-text {
    position: absolute;
    bottom: -100%;
    left: 50%;
    width: max-content;
    font-family: var(--font-base);
    font-weight: 900;
    line-height: 1;
    font-size: 23rem;
    text-transform: uppercase;
    letter-spacing: -6%;
    color: #202124;
    text-align: center;
    transform: translateX(-50%);
    transition: all 1100ms ease 1s;
    z-index: -1;
}
.fade-in .kike-arnaiz-background-text {
    bottom: -3rem;
}
.kike-arnaiz-copyright-content-inner {
    display: flex;
    flex-flow: column;
    justify-content: center;
    width: 100%;
    padding-top: 7.813rem;
}
.kike-arnaiz-socials {
    position: relative;
    max-width: max-content;
    display: flex;
    flex-flow: wrap;
    column-gap: 6.25rem;
    margin: 0 auto;
}
.kike-arnaiz-socials a {
    position: relative;
    display: inline-flex;
    font-size: 4.375rem;
    font-weight: 900;
    letter-spacing: 2%;
    text-transform: uppercase;
    text-decoration: none;
    color: #A5A5A7;
}
.kike-arnaiz-socials a:first-child::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(100% + 3.125rem);
    height: 3.438rem;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    transform: translateY(-50%);
}
.kike-arnaiz-socials a:hover {
    color: #D97709;
}
.kike-arnaiz-copyright-botton {
    position: relative;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    padding-top: 4.375rem;
}
.kike-arnaiz-copyright-text {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    column-gap: 3.438rem;
    justify-self: center;
    max-width: max-content;
}
.kike-arnaiz-copyright-text p {
    position: relative;
    font-size: 0.625rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 10%;
    text-transform: uppercase;
    color: #ABABAD;
}
.kike-arnaiz-copyright-text p:first-child::after {
    content: "○";
    position: absolute;
    top: 50%;
    left: calc(100% + 1.719rem);
    font-size: 0.625rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 10%;
    text-transform: uppercase;
    color: #ABABAD;
    transform: translateY(-50%);
}
.kike-arnaiz-builders {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 0.625rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 10%;
    text-transform: uppercase;
    color: #ABABAD;
}
.kike-arnaiz-builders a {
    text-decoration: none;
    color: #436EBE;
}
.kike-arnaiz-builders a:hover {
    color: #D97709;
}



/* =============================================================================
   Accessibility Utilities
============================================================================= */
.screen-reader-text {
    position: absolute;
    width: 0.063rem;
    height: 0.063rem;
    padding: 0;
    margin: -0.063rem;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.screen-reader-text:focus {
    clip: auto;
    height: auto;
    left: var(--space-md);
    top: var(--space-md);
    width: auto;
    z-index: 100000;
    background: var(--color-primary);
    color: var(--color-white);
    padding: var(--space-sm) var(--space-lg);
}

/* High-contrast mode support */
@media (forced-colors: active) {
    .kike-arnaiz-btn,
    .kike-arnaiz-primary-nav ul li a {
        forced-color-adjust: none;
    }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}



/*Gloabl Page Style*/
.kike-arnaiz-content-area--full {
    min-height: 100vh;
    background-color: #2A2A2A;
}