/*
Theme Name: Aslan Portfolio
Theme URI: https://aslanshojaei.com/
Author: Aslan Shojaei
Author URI: https://aslanshojaei.com/
Description: A cinematic, accessible portfolio theme with full Elementor and Elementor Pro Theme Builder compatibility.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aslan-portfolio
Domain Path: /languages
Tags: portfolio, one-column, custom-logo, custom-menu, featured-images, translation-ready
*/

:root {
  --aslan-wp-content-width: 76rem;
}

.aslan-wp-content {
  width: min(calc(100% - 2rem), var(--aslan-wp-content-width));
  margin-inline: auto;
  padding-block: clamp(7rem, 12vw, 11rem) 5rem;
}

.aslan-wp-content > * + * { margin-top: 1.25rem; }
.aslan-wp-content img { max-width: 100%; height: auto; }
.aslan-wp-content .alignwide { width: min(90vw, 90rem); margin-inline: 50%; transform: translateX(-50%); }
.aslan-wp-content .alignfull { width: 100vw; max-width: none; margin-inline: 50%; transform: translateX(-50%); }
.aslan-entry-header { margin-bottom: 2.5rem; }
.aslan-entry-title { font-size: clamp(2.75rem, 7vw, 6.5rem); line-height: .95; }
.aslan-entry-meta { margin-top: .8rem; color: #657086; }
.aslan-post-list { display: grid; gap: 1.5rem; }
.aslan-post-card { padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid rgba(17,29,53,.14); border-radius: 1.4rem; }
.aslan-pagination { margin-top: 3rem; }
.aslan-comments { margin-top: 4rem; }
.aslan-comments ol { padding-left: 1.5rem; }
.aslan-404-search { margin-top: 2rem; }
.aslan-project-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-block: 3rem; }
.aslan-project-facts > div { padding: 1.25rem; border: 1px solid rgba(17,29,53,.14); border-radius: 1rem; }
.aslan-project-facts dt { color: #7a1f35; font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.aslan-project-facts dd { margin-top: .65rem; }
.aslan-content-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 2rem); margin-top: 3rem; }
.aslan-content-card { overflow: hidden; border: 1px solid rgba(17,29,53,.14); border-radius: 1.4rem; background: rgba(255,255,255,.55); }
.aslan-content-card__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #091224; }
.aslan-content-card__media:empty { display: none; }
.aslan-content-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.aslan-content-card:hover .aslan-content-card__media img { transform: scale(1.035); }
.aslan-content-card__copy { padding: clamp(1.25rem, 2.5vw, 2rem); }
.aslan-content-card__copy h2 { margin-block: .6rem 1rem; font-size: clamp(1.6rem, 3vw, 2.4rem); line-height: 1.05; }
.aslan-content-card__link { display: inline-block; margin-top: 1rem; color: #7a1f35; font-weight: 600; }
.search-form { display: flex; align-items: end; gap: .75rem; }
.search-field { min-height: 3rem; padding: .65rem .85rem; border: 1px solid rgba(17,29,53,.25); background: #fff; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { z-index: 100000; top: .5rem; left: .5rem; width: auto; height: auto; padding: .75rem 1rem; clip: auto; background: #fff; color: #091224; }

body.admin-bar .aslan-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .aslan-header { top: 46px; } }
@media (max-width: 700px) { .aslan-project-facts, .aslan-content-grid { grid-template-columns: 1fr; } .search-form { align-items: stretch; flex-direction: column; } }

body.elementor-editor-active .aslan-header { position: absolute; }
body.elementor-editor-active [class$="__pin"] { min-height: auto !important; }
.aslan-elementor-content .elementor-widget-html,
.aslan-elementor-content .elementor-widget-html > .elementor-widget-container {
  margin: 0;
  padding: 0;
}
