:root{--bg:#f4f2ed;--ink:#111;--muted:#6e6b65;--line:#d7d3cb;--accent:#b68b5c;--dark:#171716}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:fixed;z-index:20;top:0;left:0;right:0;padding:20px 0;transition:.25s;background:rgba(244,242,237,.86);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.site-header.is-scrolled{border-color:var(--line)}.header-inner{display:flex;align-items:center;gap:30px}.brand{font-weight:900;letter-spacing:.08em;text-decoration:none;color:var(--ink);font-size:17px}.brand span{font-weight:400;margin-left:5px;color:var(--muted)}.desktop-nav{display:flex;gap:24px;margin-left:auto}.desktop-nav a,.lang-switcher a{color:var(--ink);text-decoration:none;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.lang-switcher{display:flex;gap:9px}.lang-switcher .active{font-weight:800;text-decoration:underline;text-underline-offset:5px}.hero{padding:150px 0 90px;background:var(--bg)}.hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}.hero h1{font-size:clamp(50px,7vw,92px);line-height:.94;letter-spacing:-.055em;max-width:800px;margin:0 0 28px}.hero-lead{font-size:20px;color:var(--muted);max-width:500px}.hero-actions{display:flex;gap:12px;margin-top:35px;flex-wrap:wrap}.btn{display:inline-flex;padding:14px 20px;text-decoration:none;border:1px solid var(--ink);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.btn-primary{background:var(--ink);color:#fff}.btn-ghost{color:var(--ink)}.hero-visual{
    width:100%;
    max-width:460px;
    aspect-ratio:3/4;
    overflow:hidden;
    justify-self:end;
}.hero-image{width:100%;height:100%;display:block;object-fit:cover}.image-placeholder{height:100%;min-height:260px;background:#ddd9d1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#77746e;letter-spacing:.18em}.image-placeholder span{font-weight:800;font-size:24px}.image-placeholder small{margin-top:8px;font-size:10px}.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0}.intro-grid{display:grid;grid-template-columns:80px 1fr;gap:20px}.intro-grid strong{font-size:12px}.intro-grid p{max-width:780px;margin:0;font-size:18px}.section{padding:110px 0}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}.section h2{font-size:clamp(38px,5vw,64px);line-height:1;letter-spacing:-.04em;margin:0}.section-head>p{color:var(--muted);max-width:280px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-card{min-width:0}.work-card a{text-decoration:none;color:inherit}.work-card img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}.work-meta{padding:13px 0 30px}.work-meta span,.tag{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.work-meta h3{font-size:20px;margin:7px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:100px}.prose{font-size:23px;line-height:1.45}.services{background:#e8e5de}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:45px}.service-grid>div{padding:25px 20px 20px 0;border-right:1px solid var(--line)}.service-grid>div+div{padding-left:25px}.service-grid strong{font-size:11px;color:var(--muted)}.service-grid h3{font-size:28px;margin:45px 0 10px}.service-grid p{color:var(--muted);max-width:280px}.contact-section{padding-bottom:130px}.contact-box{background:var(--dark);color:#fff;padding:60px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-box h2{max-width:600px}.contact-box p{color:#c7c4bd}.contact-box .btn{border-color:#fff}.site-footer{border-top:1px solid var(--line);padding:25px 0}.footer-inner{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em}.mobile-nav,.menu-toggle{display:none}.single-work{padding:150px 0 100px}.single-work h1{font-size:clamp(48px,7vw,90px);line-height:1;margin:0 0 40px}.single-work> .wrap>img{width:min(900px,100%);display:block}.work-content{max-width:760px;font-size:18px;margin:35px 0}.tag{display:inline-block;border:1px solid var(--line);padding:8px 12px;margin:4px}@media(max-width:800px){.desktop-nav{display:none}.menu-toggle{display:flex;margin-left:auto;width:42px;height:36px;border:0;background:none;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink)}.mobile-nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:20px}.mobile-nav.is-open{display:grid}.mobile-nav a{padding:10px 0;color:var(--ink);text-decoration:none}.hero{padding-top:120px}.hero-grid,.two-col,.contact-box{grid-template-columns:1fr;gap:40px}.hero-visual{order:-1}.work-grid,.service-grid{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head>p{margin-top:20px}.contact-box{padding:35px 25px}}@media(max-width:520px){.wrap{width:min(100% - 28px,1180px)}.work-grid,.service-grid{grid-template-columns:1fr}.hero h1{font-size:54px}.section{padding:75px 0}.lang-switcher{gap:6px}.lang-switcher a{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header{transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* =========================================================
   EDITORIAL V2 — QUIET LUXURY
   ========================================================= */

/* -------------------------
   HERO
   ------------------------- */

.hero-grid {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 80px;
}

.hero-visual {
    width: 100%;
    max-width: 360px;
    aspect-ratio: 4 / 5;
    justify-self: end;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
}

.hero-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}


/* -------------------------
   WORKS — EDITORIAL GRID
   ------------------------- */

.work-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 45px;
    align-items: start;
}

.work-card {
    min-width: 0;
}

.work-card:nth-child(2),
.work-card:nth-child(3n) {
    margin-top: 0;
}

.work-card img {
    width: min(100%, 300px);
    aspect-ratio: 4 / 5;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 0;
}

.work-meta {
    width: min(100%, 300px);
    padding: 14px 0 0;
    margin-top: 14px;
    border-top: 1px solid var(--line);
}

.work-meta span {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--muted);
}

.work-meta h3 {
    font-size: 19px;
    line-height: 1.2;
    margin: 7px 0 0;
}


/* -------------------------
   SUBTLE PHOTO MOTION
   ------------------------- */

.work-card img {
    transition: transform .4s ease;
}

.work-card a:hover img {
    transform: scale(1.018);
}


/* -------------------------
   BEFORE / AFTER
   ------------------------- */

.viktor-ba-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 280px));
    gap: 24px;
    align-items: start;
}

.viktor-image-field {
    min-width: 0;
}

.viktor-image-preview {
    width: 100%;
    max-width: 280px;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: transparent;
}

.viktor-image-preview img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}


/* -------------------------
   MOBILE
   ------------------------- */

@media (max-width: 800px) {

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .hero-visual {
        width: min(100%, 340px);
        justify-self: center;
        order: -1;
    }

    .work-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px 24px;
    }

    .work-card:nth-child(2),
    .work-card:nth-child(3n) {
        margin-top: 0;
    }

    .work-card img,
    .work-meta {
        width: 100%;
        max-width: none;
    }

    .viktor-ba-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .viktor-image-preview {
        max-width: none;
    }
}


@media (max-width: 520px) {

    .hero-visual {
        width: min(100%, 320px);
    }

    .work-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .work-card img,
    .work-meta {
        width: min(100%, 300px);
    }

    .viktor-ba-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
}
/* =========================================================
   PUBLIC EDITORIAL V3
   ========================================================= */

/* HERO */

.hero-grid {
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 70px;
}

.hero-visual {
    width: 340px;
    max-width: 100%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    justify-self: end;
    background: transparent;
}

.hero-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}


/* WORK */

.work-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 55px 40px;
    align-items: start;
}

.work-card img {
    width: 100%;
    max-width: 270px;
    aspect-ratio: 4 / 5;
    height: auto;
    object-fit: cover;
    display: block;
}

.work-meta {
    width: 100%;
    max-width: 270px;
    padding: 14px 0 0;
    margin-top: 14px;
    border-top: 1px solid var(--line);
}

.work-meta h3 {
    font-size: 18px;
    line-height: 1.2;
    margin: 7px 0 0;
}


/* SINGLE WORK */

.single-work {
    padding: 150px 0 110px;
}

.single-work-main {
    width: min(620px, 100%);
    margin-top: 35px;
}

.single-work-main img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}


/* WORK DETAILS */

.work-details {
    width: min(620px, 100%);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    margin-top: 45px;
}

.work-detail {
    padding: 18px 20px 18px 0;
}

.work-detail span {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .14em;
    color: var(--muted);
    margin-bottom: 6px;
}

.work-detail strong {
    font-size: 14px;
    font-weight: 500;
}


/* BEFORE / AFTER */

.before-after {
    margin-top: 90px;
}

.before-after-grid {
    display: grid;
    grid-template-columns: repeat(2, 230px);
    gap: 30px;
    align-items: start;
}

.before-after-item {
    width: 230px;
}

.before-after-item h3 {
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--muted);
    margin: 0 0 10px;
}

.before-after-item img {
    width: 230px;
    height: 288px;
    display: block;
    object-fit: cover;
}


/* MOBILE */

@media (max-width: 800px) {

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .hero-visual {
        width: min(100%, 320px);
        justify-self: center;
        order: -1;
    }

    .work-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px 24px;
    }

    .work-card img,
    .work-meta {
        max-width: none;
    }

    .single-work-main {
        width: min(100%, 520px);
    }

    .work-details {
        grid-template-columns: repeat(2, 1fr);
    }

    .before-after-grid {
        grid-template-columns: repeat(2, minmax(0, 230px));
        gap: 18px;
    }

    .before-after-item {
        width: 100%;
    }

    .before-after-item img {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 5;
    }
}


@media (max-width: 520px) {

    .hero-visual {
        width: min(100%, 300px);
    }

    .work-grid {
        grid-template-columns: 1fr;
    }

    .work-card img,
    .work-meta {
        width: min(100%, 300px);
    }

    .single-work-main {
        width: 100%;
    }

    .work-details {
        grid-template-columns: 1fr 1fr;
    }

    .before-after-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .before-after-item {
        width: 100%;
    }

    .before-after-item img {
        width: 100%;
        aspect-ratio: 4 / 5;
        height: auto;
    }
}

/* -------------------------
   CONTACTS — EDITORIAL
   ------------------------- */

.contacts-list {
    border-top: 1px solid var(--line);
}

.contact-item {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 30px;
    align-items: center;
    padding: 24px 0;
    border-bottom: 1px solid var(--line);
    text-decoration: none;
    color: inherit;
}

.contact-label {
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--muted);
}

.contact-item strong {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: -.01em;
}

a.contact-item:hover strong {
    transform: translateX(4px);
    transition: transform .25s ease;
}

@media (max-width: 520px) {

    .contact-item {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 20px 0;
    }

    .contact-item strong {
        font-size: 16px;
    }
}
