/*
Theme Name: STILTA
Theme URI: https://stilta.lt
Author: MB STILTA
Description: Individuali STILTA gyvenamųjų namų vystymo WordPress tema.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: stilta
*/

:root {
  --stilta-graphite: #2b2f33;
  --stilta-gold: #c9a369;
  --stilta-cream: #f7f5f0;
  --stilta-sand: #e8e1d5;
  --stilta-line: #d9d4ca;
  --stilta-muted: #687069;
  --stilta-white: #fff;
  --stilta-serif: Georgia, "Times New Roman", serif;
  --stilta-sans: "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--stilta-cream); color: var(--stilta-graphite); font: 16px/1.6 var(--stilta-sans); }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
.stilta-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.site-header { position: relative; z-index: 20; background: rgba(255,255,255,.98); border-bottom: 1px solid rgba(43,47,51,.12); }
.site-header__inner { min-height: 84px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; }
.custom-logo-link { display: inline-flex; align-items: center; width: fit-content; }
.custom-logo { display: block; width: 220px; height: auto; }
.site-title { font-size: 24px; font-weight: 700; letter-spacing: .15em; }
.primary-menu { display: flex; align-items: center; gap: 30px; list-style: none; margin: 0; padding: 0; }
.primary-menu a { position: relative; display: inline-block; padding: 10px 0; font-size: 15px; }
.primary-menu a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 4px; height: 1px; background: currentColor; transition: right .2s ease; }
.primary-menu a:hover::after, .primary-menu a:focus-visible::after, .current-menu-item > a::after { right: 0; }
.site-header__email { justify-self: end; font-size: 14px; }
.menu-toggle { display: none; border: 0; background: transparent; padding: 8px; color: var(--stilta-graphite); cursor: pointer; }

.site-main { min-height: 55vh; }
.entry-content > * { margin-block-start: 0; }
.entry-content > .alignfull { width: 100%; margin-left: 0; margin-right: 0; }
.entry-content > :not(.alignfull) { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }

.wp-block-cover.stilta-hero { min-height: 690px; padding: 0; align-items: center; }
.stilta-hero .wp-block-cover__image-background { object-position: center; }
.stilta-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(11,15,18,.82) 0%, rgba(11,15,18,.56) 37%, rgba(11,15,18,.1) 72%, rgba(11,15,18,.04) 100%) !important; opacity: 1 !important; }
.stilta-hero .wp-block-cover__inner-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.stilta-hero-content { max-width: 720px; padding-block: 100px; }
.stilta-eyebrow { margin: 0 0 18px !important; color: #667064; font-size: 12px; font-weight: 700; line-height: 1.3; letter-spacing: .18em; text-transform: uppercase; }
.stilta-hero .stilta-eyebrow { color: rgba(255,255,255,.78); }
.stilta-hero h1 { margin: 0 0 22px; color: #fff; font: 500 clamp(48px, 6vw, 82px)/.99 var(--stilta-serif); letter-spacing: -.035em; }
.stilta-hero-copy { max-width: 610px; color: rgba(255,255,255,.88); font-size: 19px; line-height: 1.65; }
.stilta-button .wp-block-button__link { border-radius: 0; background: var(--stilta-cream); color: var(--stilta-graphite); padding: 15px 23px; font-size: 15px; font-weight: 650; }
.stilta-text-button .wp-block-button__link { border-radius: 0; border: 0; border-bottom: 1px solid currentColor; background: transparent; color: inherit; padding: 6px 0; font-size: 15px; font-weight: 650; }
.stilta-hero .stilta-text-button .wp-block-button__link { color: #fff; }
.stilta-buttons { gap: 28px; margin-top: 34px; }

.stilta-section { padding: 110px max(32px, calc((100vw - 1180px) / 2)) !important; }
.stilta-section > .wp-block-group__inner-container { width: 100%; max-width: 1180px; margin-inline: auto; }
.stilta-section h2, .stilta-inner-hero h1 { margin: 0; font: 500 clamp(39px, 4.5vw, 62px)/1.06 var(--stilta-serif); letter-spacing: -.025em; }
.stilta-intro-columns { gap: 9%; align-items: flex-start !important; }
.stilta-large-copy { color: #535c55; font-size: 21px; line-height: 1.65; }
.stilta-dark { background: var(--stilta-graphite); color: #eef0eb; }
.stilta-dark .stilta-eyebrow { color: #aeb8b0; }
.stilta-dark .stilta-section-lead { color: #aeb8b0; }
.stilta-section-heading { margin-bottom: 58px; gap: 9%; align-items: flex-end !important; }
.stilta-section-lead { color: var(--stilta-muted); font-size: 18px; line-height: 1.65; }
.stilta-principles { gap: 0; border-top: 1px solid rgba(255,255,255,.18); }
.stilta-principle { min-height: 270px; padding: 34px !important; border-right: 1px solid rgba(255,255,255,.18); }
.stilta-principle:first-child { padding-left: 0 !important; }
.stilta-principle:last-child { border-right: 0; }
.stilta-principle-number { color: var(--stilta-gold); font-size: 13px; }
.stilta-principle h3, .stilta-value h3 { margin-top: 64px; font: 500 27px/1.2 var(--stilta-serif); }
.stilta-principle p { color: #aeb8b0; }

.stilta-project-card { display: grid !important; grid-template-columns: 1.25fr .75fr; gap: 0 !important; background: #fff; border: 1px solid var(--stilta-line); }
.stilta-project-card .wp-block-media-text__media { min-height: 520px; height: 100%; }
.stilta-project-card .wp-block-media-text__media img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; }
.stilta-project-card .wp-block-media-text__content { padding: clamp(36px, 5vw, 68px); }
.stilta-project-card h3 { margin: 0 0 20px; font: 500 34px/1.15 var(--stilta-serif); }
.stilta-project-facts { padding: 22px 0; margin: 24px 0; border-block: 1px solid var(--stilta-line); color: var(--stilta-muted); }
.stilta-disclaimer { margin-top: 15px !important; color: #7a827c; font-size: 13px; }
.stilta-trust { padding: 38px max(32px, calc((100vw - 1180px) / 2)) !important; background: var(--stilta-sand); }
.stilta-trust > .wp-block-group__inner-container { width: 100%; max-width: 1180px; margin-inline: auto; }
.stilta-trust .wp-block-columns { margin: 0; }
.stilta-trust p { margin: 0; font-weight: 650; }

.stilta-inner-hero { padding: 96px max(32px, calc((100vw - 1180px) / 2)) 88px !important; background: #e9e3d8; border-bottom: 1px solid #d5cfc4; }
.stilta-inner-hero > .wp-block-group__inner-container { width: 100%; max-width: 1180px; margin-inline: auto; }
.stilta-inner-hero-columns { gap: 5%; }
.stilta-inner-hero h1 { font-size: clamp(50px, 6.5vw, 88px); line-height: .99; }
.stilta-inner-copy { max-width: 700px; margin-top: 30px !important; color: #59615b; font-size: 20px; }
.stilta-story { gap: 5%; }
.stilta-story-number { color: #a28b75; font-size: 14px; }
.stilta-values-section { background: #ded6c7; }
.stilta-values { gap: 1px; background: rgba(43,47,51,.15); border: 1px solid rgba(43,47,51,.15); }
.stilta-value { min-height: 285px; padding: 38px !important; background: #ded6c7; }
.stilta-value p { color: #5e665f; }
.stilta-contact-grid { gap: 0; }
.stilta-contact-card { min-height: 350px; padding: 50px !important; border: 1px solid var(--stilta-line); }
.stilta-contact-card-dark { background: var(--stilta-graphite); color: var(--stilta-cream); border-color: var(--stilta-graphite); }
.stilta-contact-card h2 { font-size: clamp(32px, 3.4vw, 48px); }
.stilta-contact-email { font: 500 clamp(28px, 3vw, 42px)/1.2 var(--stilta-serif); text-decoration: underline; text-underline-offset: 8px; }

.site-footer { padding: 75px 0 24px; background: #22262a; color: #e5e8e3; }
.site-footer__top { display: grid; grid-template-columns: 1.5fr .6fr .9fr; gap: 60px; padding-bottom: 65px; }
.site-footer__brand { display: inline-flex; padding: 0; background: transparent; }
.site-footer__brand img { display: block; width: 245px; height: auto; }
.site-footer__label { margin: 0 0 18px; color: #8d9790; font-size: 11px; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.footer-menu { list-style: none; margin: 0; padding: 0; }
.footer-menu li { margin-bottom: 10px; }
.site-footer__muted { color: #9ca69e; }
.site-footer__bottom { display: flex; justify-content: space-between; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.13); color: #8d9790; font-size: 12px; }

.entry-header-simple { padding: 80px 0 40px; }
.entry-header-simple h1 { font: 500 clamp(42px, 5vw, 70px)/1 var(--stilta-serif); }
.error-404 { padding: 100px 0; text-align: center; }

@media (max-width: 900px) {
  .site-header__inner { grid-template-columns: 1fr auto; min-height: 74px; }
  .custom-logo { width: 190px; }
  .menu-toggle { display: inline-flex; justify-self: end; }
  .site-header__email { display: none; }
  .site-navigation { display: none; grid-column: 1 / -1; width: 100%; }
  .site-navigation.is-open { display: block; }
  .primary-menu { align-items: stretch; flex-direction: column; gap: 0; padding: 12px 0 18px; border-top: 1px solid var(--stilta-line); }
  .primary-menu a { display: block; padding: 10px 0; }
  .stilta-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(11,15,18,.8), rgba(11,15,18,.3)) !important; }
  .stilta-project-card { grid-template-columns: 1fr; }
  .stilta-project-card .wp-block-media-text__media, .stilta-project-card .wp-block-media-text__media img { min-height: 390px; }
  .stilta-principles, .stilta-values, .stilta-contact-grid { display: block !important; }
  .stilta-principle { min-height: 220px; padding-left: 0 !important; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .stilta-value { border-bottom: 1px solid rgba(43,47,51,.15); }
  .site-footer__top { grid-template-columns: 1fr 1fr; }
  .site-footer__top > div:first-child { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
  .stilta-container, .entry-content > :not(.alignfull), .stilta-hero .wp-block-cover__inner-container { width: min(100% - 40px, 1180px); }
  .custom-logo { width: 166px; }
  .wp-block-cover.stilta-hero { min-height: 640px; align-items: flex-end; }
  .stilta-hero .wp-block-cover__image-background { object-position: 62% center; }
  .stilta-hero .wp-block-cover__background { background: linear-gradient(0deg, rgba(11,15,18,.88), rgba(11,15,18,.34) 75%) !important; }
  .stilta-hero-content { padding-block: 70px; }
  .stilta-hero h1 { font-size: 46px; }
  .stilta-hero-copy { font-size: 17px; }
  .stilta-buttons { align-items: flex-start; flex-direction: column; gap: 16px; }
  .stilta-section { padding: 74px 20px !important; }
  .stilta-project-card .wp-block-media-text__media, .stilta-project-card .wp-block-media-text__media img { min-height: 275px; }
  .stilta-inner-hero { padding: 70px 20px 62px !important; }
  .stilta-inner-hero h1 { font-size: 48px; }
  .stilta-contact-card { min-height: 300px; padding: 34px 26px !important; }
  .site-footer__top { grid-template-columns: 1fr; }
  .site-footer__top > div:first-child { grid-column: auto; }
  .site-footer__brand img { width: 220px; }
  .site-footer__bottom { flex-direction: column; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
