/* Shared visual refresh. Original brand colors and content are preserved. */
:root { --paper: #f7f6f2; --ink: #1a1a2e; --line: #e6e5e0; }
body { background: var(--paper); color: #646570; line-height: 1.8; }
/* Clip horizontal overflow without creating a scroll container that traps sticky navigation. */
html,body { overflow-x: clip; }
.navbar.sticky-top { position: sticky; top: 0; z-index: 1030; }
h1,h2,h3,h4,h5,h6 { font-family: 'Noto Sans Armenian','Rubik',sans-serif; color: var(--ink); letter-spacing: -.035em; }
a { transition: color .2s, background .2s, transform .2s; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible { outline: 3px solid var(--primary); outline-offset: 5px; }
.btn { border-radius: 6px; font-size: .88rem; font-weight: 600; }
.btn-primary { background: var(--primary); border-color: var(--primary); box-shadow: none; }
.btn-primary:hover { background: #df4703; border-color: #df4703; transform: translateY(-2px); }
body > .container-fluid.bg-dark.px-0 { background: var(--ink)!important; }
.footer.bg-dark,.copyright.bg-dark { background: var(--ink)!important; }
.topbar-right { background: transparent; }
.topbar-right::before { display: none; }
.topbar-right .fs-5 { font-size: .82rem!important; }
body > .container-fluid.bg-dark.px-0 > .row > .ps-5 { display: flex; align-items: center; }
body > .container-fluid.bg-dark.px-0 > .row > .ps-5 > .h-100 { height: auto!important; align-items: center; }
body > .container-fluid.bg-dark.px-0 .btn-link { display: inline-flex; align-items: center; justify-content: center; align-self: center; min-height: 30px; padding-block: 0; line-height: 1; }
.lang-btn { font-size: .7rem; min-height: 30px; min-width: 34px; padding: 2px 7px; border-radius: 4px; }
.navbar { padding: 0 clamp(20px,4vw,72px)!important; min-height: 88px; border-bottom: 1px solid var(--line); gap: 20px; }
.navbar .navbar-brand { flex-shrink: 0; padding: 0; height: auto; gap: 8px; background: #fff; }
.navbar .navbar-brand::after { display: none; }
.navbar .brand-logo { display: block; width: 64px; height: 64px; object-fit: contain; flex-shrink: 0; }
.navbar .brand-name { color: var(--ink); font-size: clamp(1rem, 1.7vw, 1.375rem); font-weight: 700; letter-spacing: -.5px; }
.navbar .navbar-nav { gap: clamp(10px,1.6vw,26px); }
.navbar .navbar-nav .nav-link { font-size: .8rem; margin: 0; padding: 29px 0; white-space: nowrap; position: relative; }
.navbar .nav-link.active::after { content:''; height: 3px; position: absolute; bottom: 19px; left:0; width:100%; background:var(--primary); }
.navbar-collapse > .btn { margin-left: 26px; white-space: nowrap; padding: 12px 18px!important; }
.home-hero { padding: 24px clamp(16px,3vw,48px) 0!important; margin-bottom: 0!important; }
#header-carousel { border-radius: 12px; overflow: hidden; background: var(--ink); }
#header-carousel .carousel-item { height: clamp(540px,46vw,700px); min-height: 0; }
#header-carousel .carousel-item > img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:65% center; }
#header-carousel .carousel-caption { padding: 50px clamp(26px,5vw,90px) 80px; background: linear-gradient(90deg,rgba(16,19,29,.93),rgba(16,19,29,.7) 42%,rgba(16,19,29,.06) 100%); }
#header-carousel .carousel-caption .container { max-width: 1400px; padding:0; }
#header-carousel .carousel-caption .row { justify-content:flex-start!important; }
#header-carousel .carousel-caption .col-lg-10 { width: min(680px,65%); }
#header-carousel .carousel-caption p { font-size:.78rem!important; letter-spacing:.08em; margin-bottom:24px; display:flex; align-items:center; gap:12px; }
#header-carousel .carousel-caption p::before { content:''; width:30px; height:2px; background:var(--primary); }
#header-carousel .display-1 { font-size:clamp(2rem,3.35vw,3.5rem)!important; line-height:1.27; margin-bottom:32px!important; font-weight:600!important; }
#header-carousel .carousel-caption .btn { padding:16px 24px!important; }
#header-carousel .carousel-caption .btn::after { content:'↗'; margin-left:24px; font-size:1.2rem; }
#header-carousel .carousel-control-prev,#header-carousel .carousel-control-next { top:auto; bottom:28px; width:44px; height:44px; opacity:1; border:1px solid #ffffff55; border-radius:50%; }
#header-carousel .carousel-control-prev { left:auto; right:90px; }
#header-carousel .carousel-control-next { right:34px; }
#header-carousel .carousel-control-prev-icon,#header-carousel .carousel-control-next-icon { width:16px; height:16px; border:0; border-radius:0; background-color:transparent; }
.hero-index { position:absolute; bottom:35px; left:clamp(26px,5vw,90px); z-index:2; display:flex; gap:12px; align-items:center; color:#fff; font-size:.75rem; letter-spacing:.12em; }
.hero-index::after { content:''; width:90px; height:2px; background:linear-gradient(90deg,var(--primary) 50%,#ffffff40 50%); }
.home-trust { display:grid; grid-template-columns:repeat(3,1fr); margin:0 clamp(16px,3vw,48px) 32px; padding:25px 5%; border-bottom:1px solid var(--line); gap:20px; }
.home-trust a { color:var(--ink); font-size:.85rem; display:flex; align-items:center; gap:14px; }
.home-trust a + a { border-left:1px solid var(--line); padding-left:30px; }
.home-trust i { color:var(--primary); font-size:20px; }
.container-xxl.py-5 { padding-top:72px!important; padding-bottom:72px!important; }
.display-5 { font-weight:600!important; line-height:1.35; }
p.text-uppercase.text-primary { font-size:.75rem; letter-spacing:.07em; }
.container-xxl img { border-radius:8px; }
.about-experience { border-top:1px solid var(--line); padding-top:24px; }
.about-experience > .bg-primary { background:transparent!important; padding:0 18px 0 0!important; border-right:1px solid var(--line); }
.about-experience .display-2 { color:var(--primary); margin:0; }
.about-experience .text-white { color:var(--ink)!important; font-size:.8rem; }
.about-experience .ms-4 { font-size:.85rem; }
.about-experience p { margin-bottom:6px; }
.facts { background:var(--ink); padding:46px max(24px,6vw)!important; }
.facts .row { --bs-gutter-y:24px; }
.facts .border { border:0!important; border-right:1px solid #ffffff20!important; padding:10px!important; }
.facts .row > :last-child .border { border-right:0!important; }
.facts i { display:none; }
.facts .display-2 { font-size:clamp(2.6rem,4vw,4rem); }
.facts .fs-5 { font-size:.85rem!important; color:#d4d4dd!important; }
.service-item { background:white; border:1px solid var(--line); border-radius:10px; overflow:hidden; height:100%; margin:0; box-shadow:none; padding-bottom:20px; transition:transform .25s,box-shadow .25s; }
.service-item:hover { transform:translateY(-5px); box-shadow:0 18px 40px #1a1a2e0c; }
.service-item > img { width:100%; height:260px; object-fit:contain; padding:20px; background:#fff; border-radius:0; }
.service-item .service-img { display:none; }
.service-item .service-detail,.service-item .service-title,.service-item .service-text { position:static; height:auto; width:auto; background:transparent; transform:none; overflow:visible; }
.service-item .service-detail { padding:26px 26px 12px; }
.service-item .service-title { display:block; padding:0; text-align:left; margin-bottom:14px; }
.service-item .service-title hr,.service-item .service-text::before { display:none; }
.service-item .service-title h3 { font-size:1.2rem; line-height:1.5; }
.service-item .service-text { padding:0; text-align:left; }
.service-item .service-text p { color:#646570!important; font-size:.88rem; }
.service-item .btn { position:static; transform:none; width:auto; height:auto; display:inline-flex; margin:0 26px; padding:8px 0; box-shadow:none; color:var(--primary); background:transparent; }
.service-item .btn::after { content:'↗'; margin-left:20px; }
.project-grid { max-width:1400px; margin:auto; padding:0 32px 50px; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.project-grid .project-item { border-radius:8px; background:#ffffff08; }
.project-grid .project-item .project-title { justify-content:flex-start; padding:20px; background:transparent; }
.project-grid .project-item h5 { font-size:.9rem; color:#fff!important; }
.project-grid .project-item:hover img { transform:scale(1.03); }
.footer { border-top:1px solid #ffffff18; margin-top:0!important; color:#a9a9b5; }
.footer .container { padding-top:20px!important; padding-bottom:20px!important; }
.footer h5 { font-size:1rem; }
.footer p,.footer .btn-link { font-size:.85rem; }
.footer .form-control { border-color:#ffffff30; color:white; }
.copyright { border-top:1px solid #ffffff18; font-size:.75rem; }
.page-header { margin-bottom:24px!important; }
@media (max-width:1199px) and (min-width:768px) { .navbar { flex-wrap:wrap; gap:6px; padding:16px 24px!important; } .navbar .navbar-nav { margin-left:0!important; } .navbar .navbar-nav .nav-link { padding:14px 0; } .navbar .nav-link.active::after { bottom:4px; } .navbar-collapse > .btn { margin-left:auto; } }
@media (max-width:767px) {
 .navbar { min-height:76px; padding:16px 20px!important; gap:0; } .navbar .navbar-nav .nav-link { padding:10px 0; font-size:.95rem; } .navbar .nav-link.active::after { display:none; }
 .home-hero { padding:12px 12px 0!important; } #header-carousel .carousel-item { height:570px; } #header-carousel .carousel-caption { padding:34px 25px 90px; background:linear-gradient(90deg,#10131de8,#10131d65); } #header-carousel .carousel-caption .col-lg-10 { width:100%; } #header-carousel .display-1 { font-size:clamp(1.7rem,6vw,2.7rem)!important; } #header-carousel .carousel-item > img { object-position:60%; }
 .home-trust { grid-template-columns:1fr; padding:24px 12px; gap:16px; margin-bottom:0; } .home-trust a + a { padding-left:0; border:0; } .home-trust a { font-size:.8rem; }
 .container-xxl.py-5 { padding-top:42px!important; padding-bottom:42px!important; } .project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:0 16px 32px; gap:12px; } .project-grid .project-item .project-title { padding:12px; } .project-grid .project-item h5 { font-size:.75rem; } .about-experience > .bg-primary { border:0; }
 .facts { padding:30px 20px!important; } .facts .border { border-right:0!important; } .facts .row { --bs-gutter-y:16px; } .facts .row > div { width:50%; } .facts .fs-5 { font-size:.7rem!important; } .service-item > img { height:240px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } .wow { visibility:visible!important; } }

/* Architectural direction: open layouts, measured rules and unfiltered photography. */
:root { --paper: #f4f2ec; --line: #dedcd4; }
body { font-size: 15px; }
.btn { border-radius: 0; }
.navbar { min-height: 94px; }
.navbar .navbar-nav .nav-link { font-size: .78rem; }
.navbar-collapse > .btn { background: var(--ink); border-color: var(--ink); }
.navbar-collapse > .btn:hover { background: var(--primary); border-color: var(--primary); }
.container-xxl img,.project-grid .project-item { border-radius: 0; }
.home-page .home-hero { padding: 0!important; }
.home-page #header-carousel { border-radius: 0; background: var(--paper); border-bottom: 1px solid var(--line); }
.home-page #header-carousel .carousel-item { height: clamp(600px,48vw,760px); }
.home-page #header-carousel .carousel-item > img { width: 52%; height: 100%; right: 0; object-position: center; }
.home-page #header-carousel .carousel-caption { width: 48%; right: auto; padding: 60px clamp(26px,4.8vw,86px) 100px; background: var(--paper); color: var(--ink); }
.home-page #header-carousel .carousel-caption .col-lg-10 { width: 100%; }
.home-page #header-carousel .carousel-caption p { font-size: .68rem!important; letter-spacing: .1em; line-height: 1.8; margin-bottom: 32px; }
.home-page #header-carousel .display-1 { color: var(--ink)!important; font-size: clamp(2rem,3.3vw,3.7rem)!important; font-weight: 500!important; line-height: 1.3; letter-spacing: -.055em; margin-bottom: 40px!important; }
.home-page #header-carousel .carousel-caption .btn { background: transparent; color: var(--ink); padding: 12px 0!important; border: 0; border-bottom: 1px solid var(--ink); }
.home-page #header-carousel .carousel-caption .btn:hover { color: var(--primary); border-color: var(--primary); transform: none; }
.home-page #header-carousel .carousel-caption .btn::after { margin-left: 40px; }
.home-page .hero-index { color: #74746e; left: clamp(26px,4.8vw,86px); bottom: 32px; font-family: monospace; }
.home-page .hero-index::after { background: linear-gradient(90deg,var(--primary) 50%,var(--line) 50%); }
.home-page #header-carousel .carousel-control-prev,.home-page #header-carousel .carousel-control-next { bottom: 24px; background: var(--paper); border-color: var(--paper); border-radius: 0; }
.home-page #header-carousel .carousel-control-prev-icon,.home-page #header-carousel .carousel-control-next-icon { filter: invert(1); }
.home-page .home-trust { margin: 0; padding: 28px clamp(24px,4.8vw,86px); border-bottom: 1px solid var(--line); counter-reset: trust; }
.home-page .home-trust a { font-size: .77rem; gap: 18px; counter-increment: trust; }
.home-page .home-trust a::before { content: none; }
.home-page .home-trust i { display: inline-block; color: var(--primary); font-size: 20px; flex-shrink: 0; }
.home-page .container-xxl.py-5 { padding-top: 110px!important; padding-bottom: 110px!important; }
.home-page .container-xxl > .container { max-width: 1320px; }
.home-page .display-5 { font-size: clamp(1.8rem,2.8vw,3rem)!important; font-weight: 500!important; letter-spacing: -.045em; }
.home-page .studio-about .row.gx-3 { align-items: center; position: relative; padding: 0 36px 50px 0; }
.home-page .studio-about .row.gx-3 > :first-child { width: 72%; }
.home-page .studio-about .row.gx-3 > :last-child { width: 44%; position: absolute; right: 0; bottom: 0; border: 10px solid var(--paper); padding: 0; }
.home-page .studio-about .row.gx-3 img { width: 100%; object-fit: cover; }
.home-page .studio-about .row.gx-3 > :first-child img { height: 490px; }
.home-page .studio-about .row.gx-3 > :last-child img { height: 290px; }
.home-page .facts { margin: 0!important; background: var(--paper); border-block: 1px solid var(--line); padding: 44px 5%!important; }
.home-page .facts .border { text-align: left!important; border-color: var(--line)!important; padding-left: 24px!important; }
.home-page .facts .display-2 { font-family: 'Rubik',sans-serif; font-weight: 400!important; color: var(--ink)!important; font-size: clamp(2.8rem,5vw,5rem); letter-spacing: -.06em; }
.home-page .facts .fs-5 { color: #77766f!important; font-size: .75rem!important; }
.home-page .service-item { border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; padding: 20px 0 0; }
.home-page .service-item:hover { transform: none; box-shadow: none; }
.home-page .responsive-card-grid { gap: 36px; }
.home-page .service-item > img { height: 330px; object-fit: contain; padding: 28px; background: #fff; transition: filter .25s; }
.home-page .service-item:hover > img { filter: brightness(1.04); }
.home-page .service-item .service-detail { padding: 24px 0 8px; }
.home-page .service-item .service-title h3 { font-size: 1.25rem; font-weight: 500!important; }
.home-page .service-item .btn { margin: 0; border-bottom: 1px solid var(--line); font-size: .78rem; }
.home-page .studio-projects { background: #1a1a2e!important; margin: 0!important; padding: 80px 0 0!important; }
.home-page .studio-projects > .text-center { text-align: left!important; max-width: 1320px!important; padding: 0 32px; margin-top: 0!important; }
.home-page .project-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; padding-bottom: 60px; }
.product-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.product-category-grid .project-item { scroll-margin-top: 150px; }
.home-page .project-grid .project-item { background: transparent; }
.home-page .project-grid .project-item img { aspect-ratio: 4 / 3; }
.home-page .project-grid .project-item .project-title { padding: 16px 0; border-bottom: 1px solid #ffffff25; justify-content: space-between; }
.home-page .project-grid .project-item .project-title::after { content: '↗'; color: var(--primary); }
.home-page .project-grid .project-item:hover img { transform: none; }
.footer { padding-top: 64px!important; }
.home-page .studio-projects + .footer { border-top: 0; }
.calculator-page .page-header { padding-block: 12px!important; margin-bottom: 12px!important; }
.calculator-page .page-header > .container { padding-block: 8px!important; }
.calculator-page .page-header .display-3 { font-size: 1.65rem!important; margin-bottom: 6px; }
.calculator-page .page-header .breadcrumb-item { font-size: .8rem; }
.calculator-page .app-canvas-full { min-height: 0; }
.pvc-grille-controls { padding: 10px 24px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.pvc-grille-controls[hidden] { display: none; }
.pvc-grille-controls label { display: flex; align-items: center; gap: 12px; width: fit-content; min-height: 44px; margin: 0 auto; padding: 8px 18px; background: white; border: 1px solid #ff5e14; color: #1a1a2e; cursor: pointer; font-weight: 600; font-size: 14px; }
.pvc-grille-controls input { width: 20px; height: 20px; accent-color: #ff5e14; }
.pvc-grille-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px 32px; }
.pvc-grille-controls label { margin: 0; }
.pvc-finish-options { display: flex; align-items: center; gap: 6px; }
.pvc-finish-swatch { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 2px solid transparent; border-radius: 50%; padding: 4px; background: transparent; }
.pvc-finish-swatch[aria-pressed="true"] { border-color: var(--primary); }
.pvc-finish-swatch > span { display: block; width: 30px; height: 30px; border: 1px solid #9ca3af; border-radius: 50%; }
.wood-finish-chip { background: repeating-linear-gradient(8deg,#a16c38 0px,#ba874b 2px,#9b6633 3px,#c28e52 5px); }
.pvc-finish-name { margin-left: 8px; font-size: 13px; color: var(--ink); min-width: 95px; }
.wow,.animated { animation: none!important; visibility: visible!important; }
.btn-play::before,.btn-play::after { animation: none!important; }
@media (min-width:768px) and (max-width:1199px) {
 .home-page .project-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .home-page #header-carousel .carousel-caption { padding-left: 32px; padding-right: 32px; }
 .home-page #header-carousel .display-1 { font-size: 2.1rem!important; }
 .home-page .studio-about .row.gx-3 > :first-child img { height: 380px; }
}
@media (max-width:767px) {
 .navbar { min-height: 80px; }
 .navbar .brand-logo { width: 52px; height: 52px; }
 .home-page #header-carousel .carousel-item { height: 790px; }
 .home-page #header-carousel .carousel-caption { width: 100%; height: 450px; padding: 34px 24px 50px; align-items: center; }
 .home-page #header-carousel .carousel-caption p { margin-bottom: 20px; }
 .home-page #header-carousel .display-1 { font-size: clamp(1.8rem,6.7vw,2.6rem)!important; margin-bottom: 24px!important; }
 .home-page #header-carousel .carousel-item > img { width: 100%; height: 340px; top: 450px; }
 .home-page .hero-index { bottom: 24px; color: white; left: 24px; text-shadow: 0 1px 4px #000; }
 .home-page .home-trust { padding: 24px; gap: 18px; }
 .home-page .home-trust a { font-size: .78rem; }
 .home-page .container-xxl.py-5 { padding: 64px 12px!important; }
 .home-page .studio-about .row.gx-3 > :first-child img { height: 350px; }
 .home-page .studio-about .row.gx-3 > :last-child img { height: 210px; }
 .home-page .facts .border { padding-left: 0!important; }
 .home-page .service-item > img { height: 300px; }
 .home-page .project-grid { grid-template-columns: 1fr; gap: 24px; padding: 0 24px 48px; }
 .home-page .project-grid .project-item:first-child img,.home-page .project-grid .project-item:last-child img { aspect-ratio: 4 / 3; }
 .home-page .studio-projects { padding-top: 56px!important; }
 .home-page .studio-projects > .text-center { padding: 0 24px; }
}
