/* Figma Page 1, Desktop1503 21:4067 / Mobile390 21:3862. */
@font-face{font-family:'EB Garamond';src:url('design/fonts/EBGaramond-Italic.ttf') format('truetype');font-style:italic;font-weight:400 800;font-display:swap}
.reviews-grid p{font-family:'EB Garamond',Garamond,serif;font-style:italic;font-weight:400;font-size:20px;line-height:1.3}
.reviews-grid cite{display:block;text-align:right;font-size:18px;line-height:27px}
@container(max-width:700px){.customer-reviews .reviews-grid{gap:0}.customer-reviews .reviews-grid blockquote{position:relative;background:transparent;border:0;border-radius:0;padding:20px 0 28px}.customer-reviews .reviews-grid blockquote:not(:last-child)::after{content:'';position:absolute;bottom:0;left:calc(50% - 36px);width:72px;height:1px;background:#9ba58e}.customer-reviews .reviews-grid p{font-size:20px;line-height:26px;margin-bottom:14px}}
.site-shell{max-width:1503px}.site-content{min-height:0!important}header{background:#573419;height:144px}.viewport-tools{display:none}.mobile-header-links{display:none!important}.desktop-made{display:block}.mobile-projects-title{display:none}
.footer-brand .brand-logo{filter:brightness(0) saturate(100%) invert(24%) sepia(18%) saturate(633%) hue-rotate(77deg) brightness(90%)}
@container(min-width:701px){.site-content>footer>span{font-size:23px}}
@container(max-width:700px){.reviews-grid blockquote{border:0;background:#faf9f5}}
.project-card{display:flex;flex-direction:column;min-width:0}.project-title{order:-1;min-height:44px;margin:0;font-size:23px;line-height:30px;font-weight:400}.title-button{font:inherit;text-align:inherit;width:100%}.project-meta,.portfolio-tip{display:none!important}.project-photo{aspect-ratio:4/5}.project-grid{gap:60px 24px}.portfolio{background:#f7f8f2}.hero-open{display:none}.hero-gallery:before{display:none}.site-content>footer{display:flex;justify-content:center;align-items:center;gap:64px;margin-top:0;min-height:171px;padding:30px 5%}.footer-brand .brand-logo{width:290px}.process-editorial{margin-top:0}
/* Desktop1503: real 12-column stretch grid, not a percentage two-column split.
   The artwork includes intentional offsets from grid lines (measured in Figma).
   --du scales those offsets/type only; the actual tracks remain a fluid CSS grid. */
@container(min-width:701px){
 /* Static desktop cover: retain gallery caption/controls in source provenance only. */
 .hero-caption,.hero-dots,.hero-open{display:none!important}
 .site-content{--du:calc(100cqw / 1503);--page-inset:calc(104 * var(--du));--grid-gap:24px;--grid-column:calc((100cqw - 2 * var(--page-inset) - 11 * var(--grid-gap)) / 12)}
 .site-content>header{display:block;position:relative;width:100%;height:calc(112 * var(--du));padding:0;margin-left:0;flex-shrink:0;box-shadow:0 0 0 100vmax #573419;clip-path:inset(0 -100vmax)}
 .site-content header .desktop-header-logo{left:calc(var(--page-inset) + 34 * var(--du));top:calc(33 * var(--du));width:calc(226 * var(--du));height:calc(52 * var(--du))}
 .site-content header nav{grid-area:auto;left:calc(var(--page-inset) + 5 * (var(--grid-column) + var(--grid-gap)) + 43.4166667 * var(--du));right:calc(var(--page-inset) + 34 * var(--du));top:calc(40 * var(--du));height:calc(31 * var(--du));font-size:calc(26.166544 * var(--du));line-height:calc(31 * var(--du));align-items:center;gap:0}
 .site-content header nav a,.site-content header nav button{padding:0;font-size:inherit;line-height:inherit}
 .site-content header nav>*{position:absolute;top:0;text-align:left}.site-content header nav>a:first-child{left:0}.site-content header nav>a:nth-child(2){left:calc(233 * var(--du))}.site-content header nav>button{left:calc(525 * var(--du))}
 .hero{height:calc(761 * var(--du));padding:calc(100 * var(--du)) var(--page-inset) 0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--grid-gap);row-gap:0;align-items:start}
 .hero-copy{grid-column:1 / span 4;grid-row:1;min-width:0;margin-left:calc(14 * var(--du));height:calc(582 * var(--du))}
 .hero-copy .eyebrow{position:absolute;left:calc(3 * var(--du));top:calc(-30 * var(--du));font-size:calc(15 * var(--du));line-height:1;letter-spacing:calc(2 * var(--du));margin:0}
 .hero h1{font-size:calc(73 * var(--du));line-height:calc(84 * var(--du));letter-spacing:-2px;white-space:nowrap;margin:0}
 .hero-line-break{display:none}.hero-line-first{display:block;height:calc(68 * var(--du))}.hero-line-second{display:block;height:calc(86 * var(--du));line-height:calc(90 * var(--du));margin-left:calc(-18 * var(--du))}.hero-line-second::before{content:'\00a0'}
 .desktop-made em{display:block;margin:0;line-height:calc(75.90625 * var(--du))}
 .hero-copy .intro{position:absolute;left:calc(1 * var(--du));top:calc(341 * var(--du));width:calc(371 * var(--du));max-width:none;margin:0;font-size:calc(18.891565 * var(--du));line-height:calc(26 * var(--du))}
 .local-signature{position:absolute;left:calc(-18 * var(--du));top:calc(447 * var(--du));width:calc(390 * var(--du));max-width:none;margin:0}
 .local-signature img{width:100%;height:calc(113.085228 * var(--du))}.local-signature>div{position:relative;height:calc(14 * var(--du));font-size:calc(11.81818 * var(--du));line-height:calc(14 * var(--du));margin:calc(7.091 * var(--du)) 0 0}.local-signature>div span{position:absolute;top:0;white-space:nowrap}.local-signature>div span:first-child{left:calc(3.54547 * var(--du));top:calc(.36932 * var(--du));width:calc(124 * var(--du))}.local-signature>div span:last-child{left:calc(263.54541 * var(--du));width:calc(107 * var(--du))}
 .hero-gallery{grid-column:5 / -1;grid-row:1;padding:0;margin:calc(-53 * var(--du)) calc(-15 * var(--du)) 0 calc(-9.6666667 * var(--du));width:auto;min-width:0}
 .hero-viewport{height:auto;aspect-ratio:880/644;border-radius:calc(170 * var(--du)) 0 0 0}
 .hero-caption{width:calc(398.5 * var(--du));height:calc(21 * var(--du));margin:calc(13 * var(--du)) calc(11.5 * var(--du)) 0 auto;font-size:calc(11 * var(--du));line-height:1;align-items:center}
 .hero-controls{gap:calc(23.5 * var(--du))}.hero-controls button{padding:0;width:calc(21 * var(--du));height:calc(21 * var(--du));min-height:0}.hero-controls .icon{width:100%;height:100%}
 .hero .estimate{top:auto;left:calc(85 * var(--du));bottom:calc(42 * var(--du));width:calc(299 * var(--du));height:calc(65 * var(--du));min-height:0;padding:0 calc(25 * var(--du)) 0 calc(30.45 * var(--du));font-size:calc(19.232044 * var(--du));font-weight:600;justify-content:space-between;gap:0}
 .portfolio{padding:49px calc(var(--page-inset) - 15 * var(--du)) 76px calc(var(--page-inset) + 14 * var(--du))}.filters{margin-bottom:57px}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:60px var(--grid-gap)}.project-card{grid-column:span 4}.project-title{text-align:center;font-size:min(23px,1.53cqw)}.project-card:first-child .project-title{text-align:left}.project-photo{aspect-ratio:416/520}
 .process-editorial{padding:59px var(--page-inset) 75px}.process-heading h2{font-size:54px}.process-grid{margin-top:58px;gap:var(--grid-gap)}
 .customer-reviews{padding:74px var(--page-inset) 72px;box-shadow:0 0 0 100vmax #e9ece3;clip-path:inset(0 -100vmax)}.reviews-grid{gap:var(--grid-gap)}.customer-reviews h2 em{margin-left:-8px}.site-content>footer{padding-left:var(--page-inset);padding-right:var(--page-inset)}
}
@container(max-width:700px){
 header{height:105px;padding-left:44px}header .brand-logo{width:194px!important;height:45px!important}.site-content header .contact-shortcuts{display:flex;top:37px;right:27px;width:76px;height:24px;gap:26px}.contact-shortcuts button{width:24px;height:24px;flex-shrink:0;color:#fff}.contact-shortcuts svg{width:24px;height:24px}.mobile-header-links.is-open{display:flex!important;position:absolute;top:105px;left:0;right:0;z-index:40;background:#573419;color:#fff;height:auto;padding:20px;font:18px Arial}
 .hero{height:747px!important;display:block;padding:0!important}.hero-gallery{top:0!important;left:0;width:100%;margin:0;padding:0}.hero-viewport{aspect-ratio:auto;height:323px;border-radius:0;overflow:hidden}.hero-viewport>img{border-radius:0;object-fit:cover}.hero .estimate{display:none}.hero-copy{position:absolute;top:344px;left:0;width:100%;padding:0}.hero h1{font-size:50.6816px;line-height:47.366px;letter-spacing:0;text-align:center;margin:0 29px;width:315px}.desktop-made{display:none}.intro{font-size:22.2469px;line-height:27px;margin:21px 0 0 43px;max-width:346px;width:calc(100% - 44px)}.local-signature{width:326px;max-width:calc(100% - 64px);margin:20px 0 0 32px}.local-signature img{width:100%;height:94px}.local-signature>div{font-size:16.684px;line-height:19px;margin:2px 6px 0;gap:90px}.local-signature>div span{flex:1}
 .portfolio{padding:16px 23px 40px;background:#f5f3ee}.mobile-projects-title{display:block;font:43.6886px/52px Georgia,serif;text-align:center;margin:0 0 16px;white-space:nowrap}.project-grid{gap:60px 14px}.project-title{font:20px/24px Georgia,serif;text-align:center;min-height:60px;display:flex;align-items:center;justify-content:center;padding-bottom:8px}.project-photo{aspect-ratio:165/219}.photo-overlay{font-size:9px;left:8px;bottom:8px}.save-button{width:46px;height:46px;right:5px;top:5px}.process-editorial{padding:40px 24px 10px;margin-top:0}.process-heading>p{margin-top:22px}.process-grid{margin-top:58px;gap:36px}.customer-reviews{padding:40px 24px}.site-content>footer{margin:0;min-height:180px;display:block;padding:22px 24px 90px;text-align:center}.footer-brand{display:flex;justify-content:center}.footer-brand .mobile-footer-logo{width:232px;height:64px}.site-content>footer>span{display:none}.bottom-nav{height:76px}
}
@container(max-width:370px){header{padding-left:24px}header .brand-logo{width:180px!important}.hero h1{width:auto;margin:0 20px;font-size:46px}.intro{font-size:19px;margin-left:30px;width:calc(100% - 40px)}.local-signature{margin-left:24px;max-width:calc(100% - 48px)}.project-title{font-size:18px}.mobile-projects-title{font-size:38px}}
.reviews-inner{position:relative}.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:32px}.reviews-heading h2{flex-shrink:0}.reviews-art{display:block;position:absolute;right:0;top:-35px;width:280px;height:140px;object-fit:contain;max-width:32%}
.bottom-nav{background:#573419;grid-template-columns:repeat(4,minmax(0,1fr));height:calc(76px + env(safe-area-inset-bottom,0px))}.bottom-nav>button{width:100%!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:76px}.bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.bottom-nav span{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip-path:none;font:10px/14px Arial,sans-serif;white-space:nowrap}
@media(max-width:700px){.bottom-nav{display:grid}}
@media(min-width:701px){.preview-mobile .bottom-nav{display:grid}}
@container(max-width:700px){.reviews-heading{display:block}.reviews-heading h2{margin:0}.reviews-art{position:static;width:240px;height:120px;max-width:100%;margin:20px auto 16px}.customer-reviews h2 em{margin-left:0}}
/* Mobile hero: 44px hit targets with compact 30px black circles. */
.process-step-icon{display:none}
@container(max-width:700px){
 .process-editorial{padding:40px 24px 48px}
 .process-editorial>.eyebrow{font-size:12px;line-height:18px;margin-bottom:18px}
 .process-heading h2{font-size:36px;line-height:1.15;letter-spacing:-.6px;margin:0}
 .process-heading>p{font-size:15px;line-height:1.5;margin:20px 0 0}
 .process-grid{margin-top:32px;gap:28px}
 .process-step{position:relative;min-width:0;padding:18px 52px 0 0}
 .process-step>span{display:block;font-size:12px;line-height:18px;margin:0 0 8px}
 .process-step h3{font:400 20px/26px Arial,sans-serif;margin:0 0 10px}
 .process-step p{font-size:15px;line-height:1.5;margin:0;max-width:none}
 .process-step-icon{display:block;position:absolute;right:0;top:44px;width:36px;height:36px;max-width:none}
}
.mobile-hero-arrow{display:none}
/* Mobile project controls: compact visuals, independent comfortable hit target. */
@container(max-width:700px){
 .project-photo .save-button{width:44px;height:44px;top:7px;right:7px;padding:0;background:transparent;backdrop-filter:none;color:#292f28;isolation:isolate}
 .project-photo .save-button::before{content:'';position:absolute;width:30px;height:30px;border-radius:50%;background:#f5f3eef2;z-index:-1}
 .project-photo .save-button .icon{width:16px;height:16px}
 .project-photo .save-button[aria-pressed=true]{background:transparent;color:#fff}
 .project-photo .save-button[aria-pressed=true]::before{background:#354637}
 .project-photo .photo-overlay{font-size:12px;line-height:16px;left:7px;bottom:7px;padding:7px 8px;gap:7px;white-space:nowrap;color:#292f28;background:#f5f3eef2}
 .project-photo .photo-overlay .icon{width:12px;height:14px}
}
/* Figma 34:4489 / 34:4492: preserve current control sizes, align centers within hero 21:3868. */
@container(max-width:700px){.mobile-hero-arrow{display:grid;place-items:center;position:absolute;top:21.84896735%;transform:translateY(-50%);width:44px;height:44px;padding:0;background:transparent;color:#fff;z-index:2}.mobile-hero-arrow::before{content:'';position:absolute;width:30px;height:30px;border-radius:50%;background:rgb(34.1346144676% 20.5711305141% 9.8465234041%)}.mobile-hero-arrow svg{position:relative;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.mobile-hero-prev{left:calc(5.78773450% - 22px)}.mobile-hero-next{right:calc(4.21226550% - 22px)}.mobile-hero-prev svg{transform:rotate(180deg)}}
.mobile-only-project{display:none!important}
@container(max-width:700px){.mobile-only-project{display:flex!important}}
.bottom-nav .figma-nav-icon{display:block;width:20px;height:20px;max-width:none}
.calc-mobile-text,.calc-mobile-submit{display:none}
/* Mobile source: Figma «Рассчитать Моб2» 18:2247, not the desktop estimate layout. */
#estimate-dialog.is-mobile-estimate{width:367px;max-width:calc(100vw - 22px);max-height:calc(100dvh - 26px);padding:23px 18px 27px 19px;border-radius:26px;background:#faf9f6}
#estimate-dialog.is-mobile-estimate::backdrop{background:#555b54;backdrop-filter:none}
.is-mobile-estimate .calc-close{top:13px;right:12px;width:32px;height:32px}
.is-mobile-estimate .calc-desktop-text{display:none}
.is-mobile-estimate .calc-mobile-text{display:inline}
.is-mobile-estimate .calc-title-first{display:block}
.is-mobile-estimate #estimate-title em{color:#573419}
.is-mobile-estimate #estimate-title{font-family:Georgia,serif;font-size:30px;line-height:33px;letter-spacing:-1px;padding:0;margin:0 0 16px;white-space:normal;color:#573419}
.is-mobile-estimate #estimate-description{font-size:15px;line-height:22px;font-weight:700;letter-spacing:0;white-space:nowrap;margin:0 0 15px;color:#5c675e}
.is-mobile-estimate .calc-steps{display:grid;grid-template-columns:1fr;gap:15px}
.is-mobile-estimate .calc-step{position:relative;display:block;height:139px;min-height:139px;padding:0;border:0;border-radius:18px;box-shadow:0 1px 12.7px #00000040}
.is-mobile-estimate .calc-step:nth-child(2){height:160px;min-height:160px}
.is-mobile-estimate .calc-step:nth-child(3){height:148px;min-height:148px;margin-top:2px;padding:0}
.is-mobile-estimate .calc-step-heading{display:block;height:0;min-height:0;margin:0;white-space:nowrap}
.is-mobile-estimate .calc-step-heading>span{position:absolute;left:0;top:0;height:24px;padding:5px 8px;color:#fff;background:#573419;line-height:13px}
.is-mobile-estimate .calc-step-heading strong,.is-mobile-estimate .calc-step:nth-child(3) .calc-step-heading strong{position:absolute;left:28.1818%;top:16px;font-size:22px;line-height:28px;letter-spacing:-.14px;color:#573419;text-align:left}
.is-mobile-estimate .calc-step:nth-child(2) .calc-step-heading strong{left:37.2727%;top:9px}
.is-mobile-estimate .calc-step:nth-child(3) .calc-step-heading strong{left:31.5152%;top:12px}
.is-mobile-estimate .calc-option{position:absolute;left:10.303%;top:66px;height:18px;min-height:18px;padding:0;margin:0;gap:11px;background:transparent;border:0;border-radius:0;font-size:13.5px;line-height:16px;white-space:nowrap}
.is-mobile-estimate .calc-option:nth-of-type(2){top:95px}
.is-mobile-estimate .calc-option:nth-of-type(3){left:55.4545%;gap:11px}
.is-mobile-estimate .calc-option:nth-of-type(4){left:55.4545%;top:95px;gap:11px}
.is-mobile-estimate .calc-option:nth-of-type(5){top:122px}
.is-mobile-estimate .calc-step:nth-child(2) .calc-option{top:62px}
.is-mobile-estimate .calc-step:nth-child(2) .calc-option:nth-of-type(2),.is-mobile-estimate .calc-step:nth-child(2) .calc-option:nth-of-type(4){top:92px}
.is-mobile-estimate .calc-step:nth-child(2) .calc-option:nth-of-type(5){top:122px}
.is-mobile-estimate .calc-step:nth-child(2) .calc-option:nth-of-type(3),.is-mobile-estimate .calc-step:nth-child(2) .calc-option:nth-of-type(4){gap:6px}
.is-mobile-estimate .calc-step:nth-child(3) .calc-option{top:65px}
.is-mobile-estimate .calc-step:nth-child(3) .calc-option:nth-of-type(2),.is-mobile-estimate .calc-step:nth-child(3) .calc-option:nth-of-type(4){top:104px}
.is-mobile-estimate .calc-step:nth-child(3) .calc-option:nth-of-type(3),.is-mobile-estimate .calc-step:nth-child(3) .calc-option:nth-of-type(4){left:55.1515%}
.is-mobile-estimate .calc-option:has(input:checked){background:transparent;color:#573419}
.is-mobile-estimate .calc-option img,.is-mobile-estimate .calc-messengers,.is-mobile-estimate .calc-contact>.calc-submit{display:none}
.is-mobile-estimate .calc-contact{display:block;margin:16px 0 0}
.is-mobile-estimate .calc-contact-field>label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.is-mobile-estimate .calc-input{height:51px;padding:0 20px;gap:28px;border:0;border-radius:0;background:transparent}
.is-mobile-estimate .calc-input>img{width:25px;height:25px;content:url('design/calc-mobile-phone.svg')}
.is-mobile-estimate .calc-input input{font-size:24px;color:#000}
.is-mobile-estimate .calc-input input::placeholder{color:#000;opacity:1}
.is-mobile-estimate .calc-consent{margin:16px 0 0 8px;height:35px;font-size:12px;line-height:16px;gap:4px;justify-content:flex-start}
.is-mobile-estimate .calc-consent label{gap:9px;align-items:center}
.is-mobile-estimate .calc-policy{text-decoration:none;font-size:12px;line-height:15px;margin-left:60px}
.is-mobile-estimate .calc-mobile-submit{display:flex;width:100%;margin:19px 0 0;height:35px;min-height:35px;position:relative;border-radius:12px;background:#573419;box-shadow:none;font-size:15px}
.is-mobile-estimate .calc-mobile-submit .icon{position:absolute;right:20px;width:12px;height:12px;background:url('design/calc-mobile-arrow.svg') center/contain no-repeat}
.is-mobile-estimate .calc-mobile-submit .icon use,.is-mobile-estimate .calc-close .icon use{display:none}
.is-mobile-estimate .calc-close .icon{background:url('design/calc-mobile-close.svg') center/contain no-repeat}
.is-mobile-estimate #calc-availability{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.is-mobile-estimate #calc-availability,.is-mobile-estimate #calc-privacy,.is-mobile-estimate #calc-status{margin:14px 0 0;font-size:12px}
@media(max-width:370px){.is-mobile-estimate .calc-step-heading strong,.is-mobile-estimate .calc-step:nth-child(3) .calc-step-heading strong{font-size:18px}.is-mobile-estimate .calc-option{gap:6px;font-size:12px}.is-mobile-estimate #estimate-description{font-size:13px}.is-mobile-estimate .calc-consent{margin-left:0;font-size:10px}.is-mobile-estimate .calc-consent label{gap:5px}.is-mobile-estimate .calc-policy{font-size:10px}}
/* Mobile header matches Figma bottom navigation: 84px, safe area is additional. */
@container(max-width:700px){.site-content>header{height:84px;flex-shrink:0;align-items:center}.site-content header .contact-shortcuts{top:30px}.mobile-header-links.is-open{top:84px}.bottom-nav{height:calc(84px + env(safe-area-inset-bottom,0px))}.bottom-nav>button{height:84px}.site-content>footer{padding-bottom:98px}}
.hero-viewport #hero-picture{position:absolute;inset:0;display:block;background:#e9ece3}
.hero-viewport #hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mobile-caption-break{display:none}
@container(max-width:700px){
 .local-signature>div{position:relative;display:block;margin:0;height:43px;gap:0}
 .local-signature>div span{position:absolute;flex:none;text-align:center;white-space:nowrap;letter-spacing:.3px}
 .local-signature>div span:first-child{left:1.8404908%;top:2px;width:35.1108996%}
 .local-signature>div span:last-child{left:68.0981595%;top:0;width:27.607362%}
 .mobile-caption-break{display:block}
 .local-signature>div span:last-child::after{content:'.'}
}
