/* v1.4: compact responsive layout; Elementor's explicit widget controls remain available. */
.basheer-theme .section-padding{padding:80px 0}
.basheer-theme .hero{padding:64px 0 28px}
.basheer-theme .hero-grid{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:32px}
.basheer-theme .hero-copy{min-width:0;padding-right:0}
.basheer-theme .hero h1{font-size:clamp(40px,4.6vw,65px);line-height:1.1;letter-spacing:-.045em;margin-bottom:22px;overflow-wrap:anywhere}
.basheer-theme .hero h1 br,.basheer-theme .hero h1 br:first-of-type{display:inline}
.basheer-theme .hero .role-text{display:block;font-size:.64em;line-height:1.25;margin-top:12px;letter-spacing:-.025em;white-space:normal;overflow-wrap:anywhere;max-width:100%}
.basheer-theme .hero .role-text:has(.bp-typed){display:grid;width:100%;max-width:100%}
.basheer-theme .bp-typed,.basheer-theme .bp-type-size{min-width:0;overflow-wrap:anywhere}
.basheer-theme .hero-art{height:auto;min-height:0;aspect-ratio:1.12;align-self:center}
.basheer-theme .portrait-frame{min-height:0;margin-bottom:40px;width:100%}
.basheer-theme .portrait-frame>img{min-height:0;aspect-ratio:1024/572;height:auto}
.basheer-theme .hero-green{bottom:26px;height:80%;border-radius:0 130px 0 130px}
.basheer-theme .developer-tag{bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:13px 18px}
.basheer-theme .hero-note{margin-top:24px;padding-top:16px}
.basheer-theme .hero-actions{margin-top:26px;gap:20px}
.basheer-theme .scroll-hint{padding-top:24px}
.basheer-theme .about-grid,.basheer-theme .contact-grid{gap:64px}
.basheer-theme .faq-grid{gap:64px}
.basheer-theme .section-top{margin-bottom:34px}
.basheer-theme .section-copy{margin-top:20px}
.basheer-theme .brief-form{padding:28px}
.basheer-theme .brief-form input,.basheer-theme .brief-form textarea,.basheer-theme .brief-form select{margin-bottom:14px;padding:11px 13px;font-size:16px}
.basheer-theme .project-open,.basheer-theme .menu-button{min-width:44px;min-height:44px}
.basheer-theme .project-preview:focus-visible{outline-offset:5px}
.basheer-theme .faq details{overflow:hidden}
.basheer-theme .faq summary::after{content:'+';transition:transform .3s ease;flex-shrink:0}
.basheer-theme .faq details[open] summary::after{content:'+';transform:rotate(45deg)}
.basheer-theme .process-grid{position:relative}
.basheer-theme .process-card{position:relative;z-index:1}
.basheer-theme .process-line{grid-column:1/-1;height:2px;background:linear-gradient(90deg,#28e98c,#09915a);transform-origin:left;pointer-events:none}
.basheer-theme .process-card,.basheer-theme .about-panel{transition:border-color .3s,box-shadow .3s}
@media(hover:hover) and (pointer:fine){
 .basheer-theme .process-card:hover{border-color:#09915a;box-shadow:0 10px 28px #1c1d2009}
 .basheer-theme .about-panel:hover{border-color:#09915a}
}
.basheer-theme .theme-btn:active,.basheer-theme .project-open:active{scale:.98}
@media(max-width:1199px){
 .basheer-theme .section-padding{padding:64px 0}
 .basheer-theme .hero{padding-top:48px}
 .basheer-theme .hero-grid{gap:26px}
 .basheer-theme .about-grid,.basheer-theme .faq-grid,.basheer-theme .contact-grid{gap:36px}
 .basheer-theme .hero-actions{gap:14px}
 .basheer-theme .hero-art{aspect-ratio:1.05}
 .basheer-theme .code-tag{width:64px;height:64px;font-size:27px}
}
@media(max-width:900px){
 .basheer-theme .about-grid,.basheer-theme .faq-grid,.basheer-theme .contact-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .basheer-theme .about-panel,.basheer-theme .brief-form{width:100%}
 .basheer-theme .hero h1{font-size:clamp(32px,4.7vw,43px)}
 .basheer-theme .hero .intro{font-size:15px;line-height:1.65}
 .basheer-theme .hero-actions .theme-btn{padding:16px 21px}
 .basheer-theme .developer-tag{font-size:11px;padding:11px 13px}
 .basheer-theme .process-grid{gap:16px}
 .basheer-theme .process-card{padding:22px}
}
@media(max-width:767px){
 .basheer-theme .container{padding-left:20px;padding-right:20px}
 .basheer-theme .section-padding{padding:44px 0}
 .basheer-theme .site-header{height:72px;padding:0 20px;gap:12px}
 .basheer-theme .wordmark{font-size:24px;gap:5px}
 .basheer-theme .brand-mark{font-size:34px}
 .basheer-theme .header-cta{padding:12px 16px;margin:0 0 0 auto;font-size:12px;white-space:nowrap}
 .basheer-theme .menu-button{width:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
 .basheer-theme .site-header nav{top:72px;padding:18px 20px;gap:4px;max-height:calc(100dvh - 72px);overflow:auto}
 .basheer-theme .site-header nav a{padding:12px 6px;min-height:44px;display:flex;align-items:center}
 .basheer-theme .hero{padding:28px 0 20px}
 .basheer-theme .hero-grid{display:flex;flex-direction:column-reverse;gap:24px}
 .basheer-theme .hero-copy{width:100%}
 .basheer-theme .hero h1{font-size:clamp(34px,8.5vw,48px);line-height:1.12;letter-spacing:-.035em;margin-bottom:18px}
 .basheer-theme .hero h1 br,.basheer-theme .hero h1 br:first-of-type{display:inline}
 .basheer-theme .hero .role-text{font-size:clamp(22px,5.5vw,30px);line-height:1.3;margin-top:10px}
 .basheer-theme .hero .eyebrow{margin-bottom:14px}
 .basheer-theme .hero .intro{font-size:16px;line-height:1.65}
 .basheer-theme .hero-actions{margin-top:22px;gap:16px;flex-wrap:wrap}
 .basheer-theme .hero-note{margin-top:20px;padding-top:14px;gap:6px}
 .basheer-theme .hero-note strong{font-size:12px;line-height:1.65}
 .basheer-theme .hero-note b{padding:0 5px}
 .basheer-theme .hero-art{width:min(400px,100%);height:auto;min-height:0;aspect-ratio:1.45}
 .basheer-theme .hero-green{height:88%;bottom:18px;border-radius:0 85px 0 85px}
 .basheer-theme .portrait-frame{min-height:0;margin-bottom:30px}
 .basheer-theme .developer-tag{bottom:0;font-size:11px;padding:10px 14px}
 .basheer-theme .code-tag{width:48px;height:48px;font-size:22px;right:0;top:0;border-radius:14px}
 .basheer-theme .decor-one{font-size:42px;top:-12px;right:23%}
 .basheer-theme .decor-two{font-size:32px;top:4px}
 .basheer-theme .scroll-hint{padding-top:16px}
 .basheer-theme h2{font-size:clamp(28px,7vw,34px);line-height:1.2;letter-spacing:-.03em;overflow-wrap:anywhere}
 .basheer-theme .section-top{margin-bottom:24px;gap:18px}
 .basheer-theme .eyebrow{margin-bottom:14px}
 .basheer-theme .section-copy{margin-top:16px;font-size:16px;line-height:1.65}
 .basheer-theme .about-panel{padding:22px}
 .basheer-theme .principle{gap:16px;padding:20px 0}
 .basheer-theme .about .theme-btn{margin-top:22px}
 .basheer-theme .service-row{padding:20px 16px;grid-template-columns:24px minmax(0,1fr) 40px;gap:10px 12px}
 .basheer-theme .service-row h3{font-size:20px;overflow-wrap:anywhere}
 .basheer-theme .service-row p{font-size:15px;line-height:1.6}
 .basheer-theme .service-arrow{width:40px;height:40px}
 .basheer-theme .work-grid{gap:28px}
 .basheer-theme .project-preview img,.basheer-theme .project-wide .project-preview img{height:auto;aspect-ratio:1.9;object-fit:cover}
 .basheer-theme .project-info{padding-top:14px;gap:12px}
 .basheer-theme .project-info h3{font-size:23px}
 .basheer-theme .process-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 .basheer-theme .process-card{padding:24px}
 .basheer-theme .process-card h3{margin:16px 0 12px}
 .basheer-theme .process-line{display:none}
 .basheer-theme .faq details{padding:18px;margin-bottom:12px}
 .basheer-theme .faq summary{font-size:16px;line-height:1.5}
 .basheer-theme .faq details p{font-size:15px;line-height:1.65}
 .basheer-theme .brief-form{padding:22px}
 .basheer-theme .social-buttons{margin-top:24px;gap:10px}
 .basheer-theme .social-buttons a{min-height:44px;display:inline-flex;align-items:center}
 .basheer-theme footer{padding:28px 0 20px}
 .basheer-theme .footer-row{gap:16px}
 .basheer-theme .footer-bottom{gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:20px}
 .basheer-theme dialog{width:calc(100% - 24px);max-height:90dvh;padding:20px}
 .basheer-theme .dialog-image{margin:18px 0}
 .basheer-theme .bp-loader::before,.basheer-theme .bp-loader::after{transition-duration:.5s}
}
@media(max-width:380px){
 .basheer-theme .container{padding-left:16px;padding-right:16px}
 .basheer-theme .site-header{padding-left:16px;padding-right:16px}
 .basheer-theme .header-cta{display:none}
 .basheer-theme .hero-actions{gap:12px}
 .basheer-theme .hero-actions .theme-btn{padding:15px 20px}
 .basheer-theme .secondary-link{font-size:12px}
 .basheer-theme .round-icon{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){.basheer-theme .theme-btn:active,.basheer-theme .project-open:active{scale:1}}
.basheer-theme.scroll-choreography .hero-art{will-change:auto}
