:root{
    --color-primary:#FEF9F3;
    --color-secondary:#CB8E56;
    --color-tertiary:#814E36;
    --color-quaternary:#3D261C;
    --color-accent:#D4944A;
    --color-white:#ffffff;
    --color-gray-light:#f0e8df;
    --color-gray:#7d6b5a;
    --color-dark:#1e1007;
    --font-primary:'Outfit',sans-serif;
    --transition:all 0.3s ease;
}

*{margin:0;padding:0;box-sizing:border-box;}
img,video{max-width:100%;height:auto;display:block;}
a{color:var(--color-secondary);text-decoration:none;transition:var(--transition);}
ul,ol{list-style:none;padding:0;margin:0;}

body{
    font-family:var(--font-primary);
    font-size:1.0625rem;
    line-height:1.75;
    color:var(--color-quaternary);
    background:var(--color-primary);
}

h1{font-size:clamp(2.5rem,6vw,5rem);font-weight:700;line-height:1.08;letter-spacing:-0.025em;}
h2{font-size:clamp(1.75rem,3.5vw,2.875rem);font-weight:700;line-height:1.18;letter-spacing:-0.02em;}
h3{font-size:1.375rem;font-weight:700;line-height:1.3;letter-spacing:-0.01em;}
h4{font-size:1.125rem;font-weight:600;}
p{margin-bottom:1rem;}
p:last-child{margin-bottom:0;}

.wk-navbar{
    position:fixed;
    top:0;
    width:100%;
    background:rgba(254,249,243,0.94);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(203,142,86,0.1);
    z-index:1000;
    padding:1rem 0;
    transition:box-shadow 0.3s ease,border-color 0.3s ease;
}
.wk-navbar.scrolled{
    box-shadow:0 2px 24px rgba(61,38,28,0.07);
    border-bottom-color:rgba(203,142,86,0.2);
}

.wk-logo{
    display:inline-flex;
    align-items:center;
    gap:0.625rem;
    text-decoration:none;
}
.wk-logo svg{width:32px;height:32px;flex-shrink:0;}
.wk-logo-text{
    font-weight:700;
    font-size:1.3125rem;
    color:var(--color-quaternary);
    letter-spacing:-0.01em;
}

.wk-nav-menu{
    display:flex;
    align-items:center;
    gap:0.125rem;
    margin:0;
    padding:0;
}
.wk-nav-link{
    font-weight:500;
    font-size:0.9375rem;
    color:var(--color-quaternary);
    padding:0.375rem 0.875rem;
    transition:color 0.3s ease;
    position:relative;
    text-decoration:none;
    display:block;
}
.wk-nav-link::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0.875rem;
    right:0.875rem;
    height:1px;
    background:var(--color-secondary);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s ease;
}
.wk-nav-link:hover{color:var(--color-secondary);}
.wk-nav-link:hover::after{transform:scaleX(1);}
.wk-nav-link.active{color:var(--color-secondary);}
.wk-nav-link.active::after{transform:scaleX(1);}

.wk-nav-cta{
    display:inline-block;
    font-weight:600;
    font-size:0.875rem;
    color:var(--color-white);
    background:var(--color-quaternary);
    padding:0.5625rem 1.375rem;
    transition:background 0.3s ease;
    text-decoration:none;
    letter-spacing:0.02em;
    white-space:nowrap;
}
.wk-nav-cta:hover{background:var(--color-secondary);color:var(--color-white);}

.wk-toggler{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    width:24px;
    height:16px;
    background:transparent;
    border:none;
    cursor:pointer;
    padding:0;
}
.wk-toggler span{
    display:block;
    height:1.5px;
    background:var(--color-quaternary);
    transition:var(--transition);
}

.wk-section{padding:5.5rem 0;}
.wk-section--dark{background:var(--color-quaternary);}
.wk-section--cream{background:var(--color-primary);}
.wk-section--light{background:var(--color-gray-light);}
.wk-section--amber{background:var(--color-secondary);}

.wk-label{
    display:inline-block;
    font-size:0.6875rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.16em;
    color:var(--color-secondary);
    margin-bottom:1rem;
}
.wk-label--dim{color:rgba(254,249,243,0.5);}

.wk-divider{
    width:3rem;
    height:2px;
    background:var(--color-secondary);
    margin:1.125rem 0 2rem;
}
.wk-divider--center{margin-left:auto;margin-right:auto;}
.wk-divider--light{background:rgba(254,249,243,0.25);}

.wk-hero{
    min-height:100vh;
    display:flex;
    align-items:center;
    padding:7rem 0 4rem;
    background:var(--color-primary);
    overflow:hidden;
}
.wk-hero__visual{position:relative;}
.wk-hero__visual img{
    width:100%;
    height:auto;
    clip-path:polygon(0 0,88% 0,100% 100%,0 100%);
}
.wk-hero__content{padding-left:2.25rem;}
.wk-hero__h1{
    color:var(--color-quaternary);
    margin-bottom:1.5rem;
}
.wk-hero__sub{
    font-size:1.0625rem;
    color:var(--color-gray);
    max-width:44ch;
    margin-bottom:2.5rem;
    line-height:1.75;
}
.wk-hero__actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;}

.wk-btn{
    display:inline-flex;
    align-items:center;
    gap:0.625rem;
    font-family:var(--font-primary);
    font-weight:600;
    font-size:0.9375rem;
    padding:0.875rem 1.875rem;
    border:none;
    cursor:pointer;
    transition:var(--transition);
    text-decoration:none;
    letter-spacing:0.02em;
    white-space:nowrap;
}
.wk-btn--primary{background:var(--color-quaternary);color:var(--color-white);}
.wk-btn--primary:hover{background:var(--color-secondary);color:var(--color-white);}
.wk-btn--outline{
    background:transparent;
    color:var(--color-quaternary);
    border:1.5px solid var(--color-quaternary);
    padding:calc(0.875rem - 1.5px) calc(1.875rem - 1.5px);
}
.wk-btn--outline:hover{background:var(--color-quaternary);color:var(--color-white);}
.wk-btn--outline-light{
    background:transparent;
    color:var(--color-white);
    border:1.5px solid rgba(255,255,255,0.45);
    padding:calc(0.875rem - 1.5px) calc(1.875rem - 1.5px);
}
.wk-btn--outline-light:hover{background:var(--color-white);color:var(--color-quaternary);}
.wk-btn--amber{background:var(--color-secondary);color:var(--color-white);}
.wk-btn--amber:hover{background:var(--color-tertiary);color:var(--color-white);}

.wk-philosophy{position:relative;overflow:hidden;}
.wk-philosophy__bg-icon{
    position:absolute;
    font-size:22rem;
    color:var(--color-secondary);
    opacity:0.04;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    pointer-events:none;
    line-height:1;
}
.wk-philosophy__quote{
    font-size:clamp(1.5rem,3vw,2.375rem);
    font-weight:700;
    color:var(--color-secondary);
    line-height:1.3;
    margin-bottom:1.5rem;
}
.wk-philosophy__text{
    font-size:1.0625rem;
    color:rgba(254,249,243,0.72);
    max-width:62ch;
    line-height:1.85;
}

.wk-expertise-item{
    display:flex;
    gap:1.75rem;
    padding:2.25rem 0;
    border-bottom:1px solid rgba(203,142,86,0.15);
}
.wk-expertise-item:first-child{border-top:1px solid rgba(203,142,86,0.15);}
.wk-expertise-icon{
    flex-shrink:0;
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1.5px solid var(--color-tertiary);
    color:var(--color-tertiary);
    font-size:1.125rem;
}
.wk-expertise-name{
    font-size:1.1875rem;
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:0.5rem;
}
.wk-expertise-desc{
    font-size:0.9375rem;
    color:var(--color-gray);
    line-height:1.75;
    margin:0;
}

.wk-gallery-grid{
    display:grid;
    grid-template-columns:7fr 5fr;
    grid-template-rows:auto auto;
    gap:1.25rem;
}
.wk-gallery-item{overflow:hidden;}
.wk-gallery-item--a{grid-column:1;grid-row:1;}
.wk-gallery-item--b{grid-column:2;grid-row:1/3;}
.wk-gallery-item--c{grid-column:1;grid-row:2;}
.wk-gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.55s ease;
}
.wk-gallery-item:hover img{transform:scale(1.04);}

.wk-process-steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    position:relative;
}
.wk-process-steps::before{
    content:'';
    position:absolute;
    top:2rem;
    left:16.67%;
    right:16.67%;
    height:1px;
    background:rgba(203,142,86,0.3);
}
.wk-process-step{
    text-align:center;
    padding:0 2.5rem 2.5rem;
    position:relative;
}
.wk-process-num{
    width:4rem;
    height:4rem;
    background:var(--color-primary);
    border:1.5px solid var(--color-secondary);
    color:var(--color-secondary);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.125rem;
    font-weight:700;
    margin:0 auto 1.75rem;
    position:relative;
    z-index:1;
}
.wk-process-title{
    font-size:1.125rem;
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:0.75rem;
}
.wk-process-text{
    font-size:0.9375rem;
    color:var(--color-gray);
    line-height:1.75;
    margin:0;
}

.wk-stats-bar{background:var(--color-secondary);}
.wk-stat{
    text-align:center;
    padding:3.25rem 1rem;
    position:relative;
}
.wk-stat+.wk-stat::before{
    content:'';
    position:absolute;
    left:0;top:2rem;bottom:2rem;
    width:1px;
    background:rgba(255,255,255,0.2);
}
.wk-stat-num{
    font-size:clamp(2.75rem,5vw,4.25rem);
    font-weight:700;
    color:var(--color-white);
    line-height:1;
    margin-bottom:0.375rem;
}
.wk-stat-line{
    width:2.5rem;
    height:1.5px;
    background:rgba(255,255,255,0.35);
    margin:0.875rem auto;
}
.wk-stat-label{
    font-size:0.9375rem;
    color:rgba(255,255,255,0.8);
}

.wk-why-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:1.5rem;
}
.wk-why-card{
    padding:2rem;
    background:var(--color-white);
    border:1px solid rgba(203,142,86,0.15);
}
.wk-why-card-icon{
    font-size:1.5rem;
    color:var(--color-secondary);
    margin-bottom:1.125rem;
}
.wk-why-card-title{
    font-size:1.0625rem;
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:0.5rem;
}
.wk-why-card-text{
    font-size:0.9rem;
    color:var(--color-gray);
    line-height:1.7;
    margin:0;
}

.wk-cta-band{
    background:var(--color-quaternary);
    padding:4.5rem 0;
}
.wk-cta-band__title{
    font-size:clamp(1.5rem,3vw,2.25rem);
    font-weight:700;
    color:var(--color-white);
    margin-bottom:1rem;
}
.wk-cta-band__text{
    font-size:1rem;
    color:rgba(254,249,243,0.65);
    max-width:48ch;
}

.wk-contact-info{padding-right:2.5rem;}
.wk-contact-lead{
    font-size:clamp(1.5rem,2.5vw,2rem);
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:0.875rem;
}
.wk-contact-sub{
    font-size:1rem;
    color:var(--color-gray);
    margin-bottom:2.5rem;
    max-width:36ch;
}
.wk-contact-item{
    display:flex;
    align-items:flex-start;
    gap:1rem;
    margin-bottom:1.5rem;
}
.wk-contact-icon-box{
    width:38px;
    height:38px;
    background:var(--color-secondary);
    color:var(--color-white);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:0.875rem;
    flex-shrink:0;
}
.wk-contact-lbl{
    font-size:0.6875rem;
    text-transform:uppercase;
    letter-spacing:0.1em;
    color:var(--color-gray);
    font-weight:700;
    display:block;
    margin-bottom:0.2rem;
}
.wk-contact-val{
    font-size:0.9375rem;
    color:var(--color-quaternary);
    font-weight:500;
    display:block;
}
.wk-contact-val a{color:var(--color-quaternary);}
.wk-contact-val a:hover{color:var(--color-secondary);}

.wk-form-card{
    background:var(--color-white);
    padding:2.5rem;
    border:1px solid rgba(203,142,86,0.2);
}
.wk-form-group{margin-bottom:1.25rem;}
.wk-form-label{
    display:block;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.1em;
    color:var(--color-quaternary);
    margin-bottom:0.5rem;
}
.wk-form-ctrl{
    width:100%;
    padding:0.8125rem 1rem;
    border:1px solid rgba(203,142,86,0.3);
    background:var(--color-primary);
    font-family:var(--font-primary);
    font-size:1rem;
    color:var(--color-quaternary);
    outline:none;
    transition:border-color 0.3s ease,background 0.3s ease;
    -webkit-appearance:none;
    border-radius:0;
}
.wk-form-ctrl:focus{
    border-color:var(--color-secondary);
    background:var(--color-white);
}
.wk-form-ctrl::placeholder{color:var(--color-gray);opacity:0.65;}
.wk-form-err{
    font-size:0.8125rem;
    color:#a83222;
    margin-top:0.375rem;
    min-height:1.2em;
    display:block;
}
.wk-form-submit{
    width:100%;
    padding:1.0625rem;
    background:var(--color-quaternary);
    color:var(--color-white);
    border:none;
    font-family:var(--font-primary);
    font-size:0.9375rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.1em;
    cursor:pointer;
    transition:background 0.3s ease;
}
.wk-form-submit:hover{background:var(--color-secondary);}

.wk-cookie{
    display:none;
    position:fixed;
    bottom:1.5rem;
    left:1.5rem;
    max-width:340px;
    background:var(--color-quaternary);
    padding:1.75rem;
    z-index:9999;
    box-shadow:0 8px 32px rgba(30,16,7,0.28);
    opacity:0;
    transform:translateY(16px);
    transition:opacity 0.3s ease,transform 0.3s ease;
}
.wk-cookie.show{opacity:1;transform:translateY(0);}
.wk-cookie.hide{opacity:0;transform:translateY(16px);}
.wk-cookie-title{
    font-size:0.9375rem;
    font-weight:700;
    color:var(--color-secondary);
    margin-bottom:0.75rem;
}
.wk-cookie-text{
    font-size:0.8125rem;
    color:rgba(254,249,243,0.72);
    line-height:1.65;
    margin-bottom:1.25rem;
}
.wk-cookie-text a{color:var(--color-secondary);}
.wk-cookie-text a:hover{text-decoration:underline;}
.wk-cookie-btns{display:flex;flex-direction:column;gap:0.5rem;}
.wk-cookie-accept{
    padding:0.5625rem 1rem;
    background:var(--color-secondary);
    color:var(--color-white);
    border:none;
    font-family:var(--font-primary);
    font-weight:600;
    font-size:0.875rem;
    cursor:pointer;
    transition:background 0.3s ease;
}
.wk-cookie-accept:hover{background:var(--color-tertiary);}
.wk-cookie-decline{
    padding:0.5625rem 1rem;
    background:transparent;
    color:rgba(254,249,243,0.55);
    border:1px solid rgba(254,249,243,0.15);
    font-family:var(--font-primary);
    font-size:0.875rem;
    cursor:pointer;
    transition:color 0.3s ease,border-color 0.3s ease;
}
.wk-cookie-decline:hover{
    color:rgba(254,249,243,0.9);
    border-color:rgba(254,249,243,0.4);
}

.wk-footer{
    background:var(--color-quaternary);
    color:var(--color-white);
    padding:4rem 0 2rem;
}
.wk-footer-brand{font-size:1.375rem;font-weight:700;color:var(--color-secondary);margin-bottom:0.875rem;}
.wk-footer-tagline{
    font-size:0.9375rem;
    color:rgba(254,249,243,0.5);
    max-width:28ch;
    line-height:1.6;
}
.wk-footer-heading{
    font-size:0.6875rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.16em;
    color:var(--color-secondary);
    margin-bottom:1.25rem;
}
.wk-footer-link{
    display:block;
    color:rgba(254,249,243,0.62);
    font-size:0.9375rem;
    padding:0.25rem 0;
    transition:color 0.3s ease;
    text-decoration:none;
}
.wk-footer-link:hover{color:var(--color-secondary);}
.wk-footer-bottom{
    border-top:1px solid rgba(254,249,243,0.08);
    padding-top:1.75rem;
    margin-top:3rem;
}
.wk-footer-copy{font-size:0.8125rem;color:rgba(254,249,243,0.38);}
.wk-footer-legal{display:flex;flex-wrap:wrap;gap:1.25rem;}
.wk-footer-legal-link{
    font-size:0.8125rem;
    color:rgba(254,249,243,0.48);
    text-decoration:none;
    transition:color 0.3s ease;
}
.wk-footer-legal-link:hover{color:var(--color-secondary);}

.wk-page-hero{
    padding:9rem 0 5rem;
    background:var(--color-primary);
    border-bottom:1px solid rgba(203,142,86,0.1);
}

.wk-quote-block{
    padding:2.5rem;
    border-left:3px solid var(--color-secondary);
    background:var(--color-gray-light);
}
.wk-quote-block-text{
    font-size:1.25rem;
    font-weight:300;
    font-style:italic;
    color:var(--color-quaternary);
    line-height:1.6;
}

.wk-team-card{
    background:var(--color-white);
    border:1px solid rgba(203,142,86,0.12);
    overflow:hidden;
}
.wk-team-card img{width:100%;height:auto;}
.wk-team-card-info{padding:1.5rem;}
.wk-team-card-name{font-size:1.0625rem;font-weight:700;color:var(--color-quaternary);margin-bottom:0.25rem;}
.wk-team-card-role{font-size:0.875rem;color:var(--color-secondary);font-weight:500;}

.wk-portfolio-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
    gap:1.5rem;
}
.wk-portfolio-card{overflow:hidden;}
.wk-portfolio-card-img{
    overflow:hidden;
}
.wk-portfolio-card-img img{
    width:100%;
    height:auto;
    transition:transform 0.5s ease;
}
.wk-portfolio-card:hover .wk-portfolio-card-img img{transform:scale(1.05);}
.wk-portfolio-card-info{
    padding:1.5rem;
    background:var(--color-white);
    border:1px solid rgba(203,142,86,0.12);
}
.wk-portfolio-card-tag{
    font-size:0.6875rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.12em;
    color:var(--color-secondary);
    margin-bottom:0.5rem;
}
.wk-portfolio-card-title{
    font-size:1.0625rem;
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:0.375rem;
}
.wk-portfolio-card-loc{
    font-size:0.875rem;
    color:var(--color-gray);
}

.faq-item{border-bottom:1px solid rgba(203,142,86,0.15);}
.faq-item:first-child{border-top:1px solid rgba(203,142,86,0.15);}
.faq-question{
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:1.375rem 0;
    background:transparent;
    border:none;
    text-align:left;
    font-family:var(--font-primary);
    font-size:1rem;
    font-weight:600;
    color:var(--color-quaternary);
    cursor:pointer;
    transition:color 0.3s ease;
    gap:1rem;
}
.faq-question:hover{color:var(--color-secondary);}
.faq-icon{
    width:24px;
    height:24px;
    border:1.5px solid var(--color-secondary);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    font-size:0.7rem;
    color:var(--color-secondary);
    transition:var(--transition);
}
.faq-item.active .faq-icon{background:var(--color-secondary);color:var(--color-white);}
.faq-answer{overflow:hidden;max-height:0;transition:max-height 0.35s ease;}
.faq-answer.active{max-height:500px;}
.faq-answer-inner{
    padding:0 0 1.5rem;
    font-size:0.9375rem;
    color:var(--color-gray);
    line-height:1.8;
}

.wk-thanks{
    min-height:100vh;
    display:flex;
    align-items:center;
    background:var(--color-primary);
}
.wk-thanks-icon{font-size:3rem;color:var(--color-secondary);margin-bottom:1.5rem;}
.wk-thanks-title{
    font-size:clamp(1.75rem,4vw,3rem);
    font-weight:700;
    color:var(--color-quaternary);
    margin-bottom:1rem;
}
.wk-thanks-text{
    font-size:1.0625rem;
    color:var(--color-gray);
    max-width:48ch;
    margin-bottom:2.5rem;
}

.wk-legal{padding:8rem 0 5rem;}
.wk-legal h1{font-size:clamp(1.75rem,3.5vw,2.5rem);color:var(--color-quaternary);margin-bottom:2.5rem;letter-spacing:-0.02em;}
.wk-legal h2{font-size:1.25rem;color:var(--color-quaternary);margin-top:2.5rem;margin-bottom:0.875rem;font-weight:700;}
.wk-legal p{color:var(--color-gray);line-height:1.85;margin-bottom:1rem;font-size:0.9375rem;}
.wk-legal a{color:var(--color-secondary);}
.wk-legal ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem;}
.wk-legal li{color:var(--color-gray);font-size:0.9375rem;line-height:1.85;margin-bottom:0.375rem;}

@media(max-width:991.98px){
    .wk-hero{padding:6rem 0 3rem;}
    .wk-hero__visual img{clip-path:none;}
    .wk-hero__content{padding-left:0;padding-top:2rem;}
    .wk-gallery-grid{
        grid-template-columns:1fr 1fr;
        grid-template-rows:auto auto;
    }
    .wk-gallery-item--a{grid-column:1;grid-row:1;}
    .wk-gallery-item--b{grid-column:2;grid-row:1;}
    .wk-gallery-item--c{grid-column:1/3;grid-row:2;}
    .wk-gallery-item img{object-fit:cover;height:260px;}
    .wk-process-steps{grid-template-columns:1fr;gap:0;}
    .wk-process-steps::before{display:none;}
    .wk-process-step{text-align:left;padding:1.5rem 0;display:flex;gap:1.5rem;align-items:flex-start;}
    .wk-process-num{margin:0;flex-shrink:0;}
    .wk-stat+.wk-stat::before{display:none;}
    .wk-contact-info{padding-right:0;margin-bottom:2.5rem;}
    .wk-why-grid{grid-template-columns:1fr;}
}
@media(max-width:767.98px){
    .wk-section{padding:3.5rem 0;}
    .wk-gallery-grid{grid-template-columns:1fr;}
    .wk-gallery-item--b,.wk-gallery-item--c{grid-column:1;grid-row:auto;}
    .wk-gallery-item img{height:220px;}
    .wk-form-card{padding:1.5rem;}
    .wk-cookie{left:1rem;right:1rem;max-width:none;bottom:1rem;}
    .wk-footer{padding:3rem 0 1.5rem;}
    .wk-footer-bottom{flex-direction:column;gap:1.25rem;}
    .wk-why-grid{grid-template-columns:1fr;}
    .wk-portfolio-grid{grid-template-columns:1fr;}
    .wk-nav-menu{flex-direction:column;align-items:flex-start;padding:1rem 0;}
    .wk-nav-cta{width:100%;text-align:center;margin-top:0.5rem;}
}