/* baldris.lt — общие стили. Код самих страниц (блоки «HTML-код») несёт свои стили внутри себя. */

/* ---------- Montserrat: свой, без обращений к Google (лицензия OFL) ---------- */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-cyrillic-ext-wght-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-cyrillic-wght-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-cyrillic-ext-wght-italic.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-cyrillic-wght-italic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-latin-ext-wght-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-latin-wght-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- основа, на которую рассчитан код страниц (так было на Тильде) ---------- */
*,*:before,*:after{box-sizing:content-box}
div,span,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,code,img,b,u,i,center,table,tr,th,td,video{margin:0;padding:0;border:0}
.t-body{margin:0}
.t-records{-webkit-font-smoothing:antialiased}
:where(.t-records) a{color:#ff8562;text-decoration:none}
:where(.t-records) a[href^=tel]{color:inherit;text-decoration:none}
:where(.t-records) ol{padding-left:22px;margin-top:0;margin-bottom:10px}
:where(.t-records) ul{padding-left:20px;margin-top:0;margin-bottom:10px}
:where(.t-records) b,:where(.t-records) strong{font-weight:700}
/* страницы, опубликованные на Тильде со старой версией правил (почти все): правила сильнее кода страницы.
   :where(.tl-v1) не добавляет веса — вес ровно как был на Тильде */
#allrecords{-webkit-font-smoothing:antialiased}
:where(.tl-v1) #allrecords a{color:#ff8562;text-decoration:none}
:where(.tl-v1) #allrecords a[href^=tel]{color:inherit;text-decoration:none}
:where(.tl-v1) #allrecords ol{padding-left:22px}
:where(.tl-v1) #allrecords ul{padding-left:20px}
:where(.tl-v1) #allrecords b,:where(.tl-v1) #allrecords strong{font-weight:700}
:where(.tl-v1) .t-records a{color:#ff8562;text-decoration:none}
:where(.tl-v1) .t-records a[href^=tel]{color:inherit;text-decoration:none}
:where(.tl-v1) .t-records ol{padding-left:22px;margin-top:0;margin-bottom:10px}
:where(.tl-v1) .t-records ul{padding-left:20px;margin-top:0;margin-bottom:10px}
img:not([src]){visibility:hidden}
sup{line-height:0;font-size:smaller;vertical-align:super}
sub{line-height:0;font-size:smaller;vertical-align:sub}
.t-text,.t-descr{font-family:'Montserrat',Arial,sans-serif;font-weight:300;color:#000}
.t-title{font-family:'Montserrat',Arial,sans-serif;font-weight:600;color:#000}
.t-align_center{text-align:center}
.t-margin_auto{margin-left:auto;margin-right:auto}
.t-title_xs{font-size:42px;line-height:1.23}
.t-descr_xl{font-size:24px;line-height:1.5}
.t-text_md{font-size:20px;line-height:1.55}
@media screen and (max-width:1200px){.t-text_md{font-size:18px}.t-descr_xl{font-size:22px}.t-title_xs{font-size:38px}}
@media screen and (max-width:640px){.t-text_md{font-size:16px;line-height:1.45}.t-descr_xl{font-size:20px;line-height:1.4}.t-title_xs{font-size:30px}}

/* ---------- галерея работ: ряды «большое фото + малое», чередуются ---------- */
.t662__container{max-width:1200px;margin:0 auto}
.t-section__container{max-width:1160px;margin:0 auto;padding:0 20px}
/* высоту ряда задаёт большое фото: 66% его ширины (как считала Тильда); малое тянется на высоту ряда */
.t662__row{display:flex;padding:0 20px 10px;font-size:0}
.t662__tile{box-sizing:border-box}
.t662__tile_lg{width:66.66%}
.t662__tile_sm{width:33.33%;display:flex}
.t662__tile_lg_left{padding-right:3px}
.t662__tile_sm_right{padding-left:7px}
.t662__tile_sm_left{padding-right:7px}
.t662__tile_lg_right{padding-left:3px}
.t662__bgimg{display:block;width:100%;object-fit:cover;cursor:zoom-in;background:#e4e4e4}
.t662__tile_lg .t662__bgimg{aspect-ratio:100/66;height:auto}
.t662__tile_sm .t662__bgimg{flex:1;min-width:0;height:auto}

/* ---------- текстовый блок (страница 404) ---------- */
.bf-text-inner{max-width:760px;margin:0 auto;padding:0 20px;font-family:'Montserrat',Arial,sans-serif;font-weight:300;font-size:20px;line-height:1.55;color:#000}
.bf-text-inner p{margin-bottom:12px}

/* ---------- всплывающая форма заявки ---------- */
.bf-popup{position:fixed;inset:0;z-index:10000;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch;background:rgba(0,0,0,.6);outline:none}
.bf-popup.is-open{display:block;animation:bf-fade .25s ease}
@keyframes bf-fade{from{opacity:0}to{opacity:1}}
.bf-locked{overflow:hidden}
.t-popup__close{position:fixed;top:20px;right:20px;z-index:10001}
.bf-close{display:block;padding:8px;border:0;background:none;cursor:pointer;line-height:0}
.bf-card{position:relative;width:504px;max-width:calc(100% - 40px);margin:60px auto;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.15)}
.bf-img{display:block;width:100%;height:auto}
.bf-body{padding:40px 45px;font-family:'Montserrat',Arial,sans-serif;color:#000}
.bf-descr{margin-bottom:30px;font-size:16px;line-height:1.55;font-weight:300;text-align:center}
.bf-group{margin-bottom:22px}
.bf-group label{display:block;margin-bottom:7px;font-size:20px;line-height:1.35;font-weight:300}
.bf-group input,.bf-group textarea{box-sizing:border-box;display:block;width:100%;height:60px;margin:0;padding:0 20px;border:1px solid #c9c9c9;border-radius:5px;background:#fff;color:#000;font:400 16px/1.33 'Montserrat',Arial,sans-serif;outline:none;-webkit-appearance:none;appearance:none}
.bf-group textarea{height:auto;padding:16px 20px;resize:vertical}
.bf-group input::placeholder{color:#000;opacity:.4}
.bf-group input:focus,.bf-group textarea:focus{border-color:#3D5273;box-shadow:0 0 0 3px rgba(61,82,115,.12)}
.bf-group.has-err input,.bf-group.has-err textarea{border-color:#e0453a}
.bf-err{min-height:0;margin-top:5px;color:#e0453a;font-size:13px;line-height:1.3}
.bf-err:empty{display:none}
.bf-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.bf-send-err{margin:-6px 0 16px;padding:12px 14px;border-radius:8px;background:#fdeceb;color:#a3261d;font-size:14px;line-height:1.45}
.bf-submit{display:block;width:100%;height:60px;margin-top:30px;border:2px solid #AA8553;border-radius:12px;background:#AA8553;color:#fff;font:600 16px 'Montserrat',Arial,sans-serif;cursor:pointer;box-shadow:0 4px 15px rgba(170,133,83,.2);transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s}
.bf-submit:hover{background:#3D5273;border-color:#3D5273;box-shadow:0 6px 20px rgba(61,82,115,.3);transform:translateY(-2px)}
.bf-submit[disabled]{opacity:.65;cursor:progress;transform:none}
.bf-success{padding:10px 0 6px;text-align:center}
.bf-success-title{margin-bottom:10px;font-size:26px;font-weight:600;color:#3D5273}
.bf-success-text{font-size:17px;line-height:1.55;font-weight:300}
@media (max-width:560px){
  .bf-card{max-width:calc(100% - 24px);margin:56px auto 24px;border-radius:20px}
  .bf-body{padding:28px 20px}
  .bf-group label{font-size:17px}
  .t-popup__close{top:8px;right:8px}
}

/* ---------- увеличение фото галереи ---------- */
.bf-zoom{position:fixed;inset:0;z-index:10010;display:none;background:rgba(255,255,255,.97);user-select:none;-webkit-user-select:none;touch-action:pan-y}
.bf-zoom.is-open{display:flex;align-items:center;justify-content:center;animation:bf-fade .2s ease}
.bf-zoom img{display:block;max-width:calc(100vw - 140px);max-height:calc(100vh - 80px);object-fit:contain;box-shadow:0 10px 40px rgba(0,0,0,.12)}
.bf-zoom button{position:absolute;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.06);color:#222;cursor:pointer}
.bf-zoom button:hover{background:rgba(0,0,0,.12)}
.bf-zoom .bf-zoom-close{top:16px;right:16px}
.bf-zoom .bf-zoom-prev{left:16px;top:50%;transform:translateY(-50%)}
.bf-zoom .bf-zoom-next{right:16px;top:50%;transform:translateY(-50%)}
.bf-zoom-count{position:absolute;left:0;right:0;bottom:14px;text-align:center;font:400 14px 'Montserrat',Arial,sans-serif;color:#555}
@media (max-width:640px){
  .bf-zoom img{max-width:100vw;max-height:calc(100vh - 120px);box-shadow:none}
  .bf-zoom .bf-zoom-prev,.bf-zoom .bf-zoom-next{top:auto;bottom:6px;transform:none}
}

/* ---------- кнопка «наверх» ---------- */
.bf-totop{position:fixed;right:30px;bottom:30px;z-index:9990;display:none;width:50px;height:50px;padding:0;border:0;background:none;cursor:pointer;line-height:0;opacity:.85}
.bf-totop:hover{opacity:1}
.bf-totop.is-on{display:block}
