:root{
  --ivory:#F6F2EA; --taupe:#AE9C89; --charcoal:#2C2924; --sage:#7C8B72; --line:#E2D8C9; --white:#FCFAF6;
  box-sizing:border-box; scroll-padding-top:76px;
}
*{box-sizing:inherit; margin:0; padding:0;}
html{padding-top:env(safe-area-inset-top,0px);}
body{
  background:var(--ivory); color:var(--charcoal);
  font-family:'Inter',sans-serif; font-size:16px; line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Fraunces',serif; font-weight:500; line-height:1.15; letter-spacing:-0.01em;}
a{color:inherit; text-decoration:none;}
img{max-width:100%;}
.wrap{max-width:1120px; margin:0 auto; padding:0 28px;}
section{padding:96px 0;}
@media(max-width:640px){section{padding:64px 0;} .wrap{padding:0 22px;}}

/* Nav */
header{
  position:sticky; top:0; z-index:50; background:rgba(246,242,234,.92); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line); padding-top:env(safe-area-inset-top,0px);
}
nav.wrap{display:flex; align-items:center; justify-content:space-between; height:76px;}
.brand{font-family:'Fraunces',serif; font-size:1.15rem;}
.nav-links{display:flex; gap:34px; font-size:.95rem;}
.nav-links a{padding:6px 0; border-bottom:1px solid transparent; transition:border-color .2s;}
.nav-links a:hover, .nav-links a:focus-visible{border-color:var(--sage);}
.nav-cta{padding:10px 20px; border:1px solid var(--charcoal); border-radius:3px; font-size:.9rem; white-space:nowrap;}
.nav-cta:hover{background:var(--charcoal); color:var(--white);}
.menu-btn{display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px;}
.menu-btn span{width:22px; height:2px; background:var(--charcoal); display:block;}
@media(max-width:860px){
  .nav-links, .nav-cta.desktop{display:none;}
  .menu-btn{display:flex;}
  #mobileMenu{display:none; flex-direction:column; justify-content:center; gap:0; position:fixed; inset:76px 0 0 0; background:var(--ivory); z-index:49;}
  #mobileMenu.open{display:flex;}
  #mobileMenu a{padding:22px 28px; border-bottom:1px solid var(--line); font-family:'Fraunces',serif; font-size:1.4rem;}
}
@media(min-width:861px){#mobileMenu{display:none;}}

/* Hero */
.hero .wrap{display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:center; padding-top:72px; padding-bottom:40px;}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr; padding-top:48px;}}
.name-label{font-size:clamp(1.8rem,4vw,2.5rem); letter-spacing:.02em; color:var(--charcoal); font-family:'Fraunces',serif; font-weight:500; margin-bottom:4px;}
.eyebrow{font-size:.76rem; letter-spacing:.16em; text-transform:uppercase; color:var(--taupe); margin:0 0 30px;}
.eyebrow-title h1{font-size:clamp(2.1rem,4.2vw,3rem); max-width:15ch;}
.hero-statement{margin-top:24px; max-width:48ch; font-size:1.08rem; color:#413d37;}
.hero-actions{display:flex; gap:16px; margin-top:38px; flex-wrap:wrap;}
.btn-primary,.btn-secondary{padding:14px 26px; border-radius:3px; font-size:.95rem; display:inline-block; transition:background .2s,border-color .2s,color .2s;}
.btn-primary{background:var(--charcoal); color:var(--white);}
.btn-primary:hover{background:var(--sage);}
.btn-secondary{border:1px solid var(--taupe);}
.btn-secondary:hover{border-color:var(--charcoal);}
.portrait-wrap{position:relative;}
.portrait-wrap::before{content:"";position:absolute; inset:16px -16px -16px 16px; border:1px solid var(--taupe); border-radius:4px; z-index:-1;}
@media(max-width:860px){.portrait-wrap::before{inset:10px -10px -10px 10px;}}
.portrait{
  aspect-ratio:3/4; border-radius:4px; background:linear-gradient(160deg,#EFE8DB,#E4D9C6);
  border:1px solid var(--line); display:flex; align-items:center; justify-content:center; text-align:center;
  color:#7a7264; font-size:.9rem; padding:30px;
}
/* Intro strip */
.intro-strip{border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:52px 0;}
.intro-strip .wrap{display:grid; grid-template-columns:repeat(3,1fr); gap:36px;}
@media(max-width:700px){.intro-strip .wrap{grid-template-columns:1fr; gap:28px;}}
.intro-item{padding-left:20px; border-left:1px solid var(--line);}
@media(max-width:700px){.intro-item{border-left:none; border-top:1px solid var(--line); padding-left:0; padding-top:16px;}}
.intro-item .label{font-size:.74rem; letter-spacing:.12em; text-transform:uppercase; color:var(--taupe); margin-bottom:8px; display:block;}
.intro-item p{color:#4b463f; font-size:.95rem;}
/* PLACEHOLDER: zëvendëso këtë div me <img src="foto-jote.jpg" alt="Aurela Berisha"> për fotografinë profesionale */

/* Section heading */
.sec-head{max-width:60ch; margin-bottom:44px;}
.sec-head h2{font-size:clamp(1.7rem,3vw,2.2rem);}
.sec-head p{margin-top:14px; color:#4b463f;}
.divider{border:0; border-top:1px solid var(--line);}

/* About */
#rreth .grid2{display:grid; grid-template-columns:1.2fr .8fr; gap:60px;}
@media(max-width:860px){#rreth .grid2{grid-template-columns:1fr;}}
.info-block h3{font-size:.8rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:16px; color:var(--taupe);}
.info-block ul{list-style:none; margin-bottom:26px;}
.info-block li{padding:8px 0; border-bottom:1px solid var(--line); font-size:.96rem;}
.academic-entries li{padding:18px 0; font-family:'Fraunces',serif; font-size:1.15rem;}
.academic-entries li em{display:block; font-size:.85rem; font-style:italic; color:#6b6459; margin-top:4px; font-family:'Inter',sans-serif;}
/* PLACEHOLDER: shto këtu emrin e universitetit / vitet e studimit kur t'i japësh */

/* Services */
.services-list{display:grid; gap:0;}
.service-row{padding:34px 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:.5fr 1fr 2fr; gap:24px; align-items:baseline; transition:transform .25s ease;}
.service-row:hover{transform:translateY(-4px);}
@media(max-width:700px){.service-row{grid-template-columns:1fr; gap:8px;}}
.service-row .row-num{font-family:'Fraunces',serif; color:var(--taupe); font-size:1.1rem;}
.service-row h3{font-size:1.25rem;}
.service-row p{color:#4b463f;}

/* Approach */
.big-statement{font-family:'Fraunces',serif; font-size:clamp(1.5rem,3.2vw,2.1rem); max-width:22ch; margin-bottom:24px;}
.principles{list-style:none; display:grid; gap:0;}
.principles li{display:flex; align-items:center; gap:22px; padding:20px 0; border-top:1px solid var(--line); font-family:'Fraunces',serif; font-size:1.15rem;}
.principles li:last-child{border-bottom:1px solid var(--line);}
.principles .row-num{font-size:.85rem; color:var(--taupe); font-family:'Inter',sans-serif; letter-spacing:.05em;}
/* Formimi psikoterapeutik */
.panels{display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
@media(max-width:700px){.panels{grid-template-columns:1fr;}}
.panel{background:var(--white); padding:42px; transition:transform .25s ease;}
.panel:hover{transform:translateY(-6px);}
.panel .row-num{font-family:'Fraunces',serif; color:var(--taupe); font-size:1.1rem;}
.panel h3{font-size:1.5rem; margin:10px 0 8px;}
.panel-sub{font-weight:500; color:#3d3a34; margin-bottom:12px;}
.panel > p:last-child{color:#4b463f; font-size:.95rem;}

/* Kur mund të kërkoni */
.kur-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:0; border-top:1px solid var(--line); border-left:1px solid var(--line);}
@media(max-width:700px){.kur-grid{grid-template-columns:1fr;}}
.kur-grid p{margin:0; padding:26px 30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-family:'Fraunces',serif; font-size:1.1rem;}

/* Process */
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:48px;}
@media(max-width:700px){.steps{grid-template-columns:1fr; gap:40px;}}
.step .num{font-family:'Fraunces',serif; font-size:2.6rem; color:var(--taupe); display:block; margin-bottom:6px;}
.step h3{margin:8px 0 10px;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{width:100%; text-align:left; background:none; border:0; padding:22px 0; font-family:'Fraunces',serif; font-size:1.05rem; cursor:pointer; display:flex; justify-content:space-between; gap:20px; color:var(--charcoal);}
.faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease; font-size:.95rem; color:#4b463f;}
.faq-a p{padding-bottom:22px; max-width:65ch;}
.faq-item.open .faq-a{max-height:220px;}
.faq-q .ic{transition:transform .25s;}
.faq-item.open .ic{transform:rotate(45deg);}

/* Contact */
#kontakt{background:var(--white); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.contact-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:60px;}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr;}}
.contact-info dt{font-size:.85rem; color:var(--taupe); margin-top:20px;}
.contact-info dd{font-size:1.02rem;}
form{display:grid; gap:16px;}
label{font-size:.88rem; color:#5c554c; display:block; margin-bottom:6px;}
input,select,textarea{
  width:100%; padding:12px 14px; border:1px solid var(--line); border-radius:3px; background:var(--ivory);
  font-family:'Inter',sans-serif; font-size:.95rem; color:var(--charcoal);
}
input:focus,select:focus,textarea:focus{outline:2px solid var(--sage); outline-offset:1px;}
textarea{min-height:120px; resize:vertical;}
.privacy-note{font-size:.82rem; color:#6b6459; line-height:1.6; margin-top:6px;}
.form-msg{font-size:.9rem; color:var(--sage); display:none;}

footer{padding:48px 0 calc(48px + env(safe-area-inset-bottom,0px));}
.footer-grid{display:flex; flex-wrap:wrap; justify-content:space-between; gap:24px; align-items:flex-start;}
.footer-links{display:flex; flex-wrap:wrap; gap:20px; font-size:.9rem;}
.footer-bottom{margin-top:34px; padding-top:22px; border-top:1px solid var(--line); font-size:.82rem; color:#7a7264; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;}

@media (prefers-reduced-motion: reduce){*{transition:none !important;}}
.fade-in{opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease;}
.fade-in.visible{opacity:1; transform:none;}