/*
Theme Name: ANIMA NUMERI
Theme URI: https://animanumeri.com
Author: ANIMA NUMERI
Description: Temă WordPress personalizată, fără Elementor, pentru website-ul ANIMA NUMERI.
Version: 3.0.0
Text Domain: anima-numeri
*/

:root{
  --ivory:#f5efe5;
  --ivory-2:#eee3d4;
  --cream:#fbf8f2;
  --brown:#3b312a;
  --brown-soft:#66584e;
  --gold:#b89558;
  --gold-light:#d9c39a;
  --sage:#6d7865;
  --line:rgba(59,49,42,.15);
  --shadow:0 24px 70px rgba(59,49,42,.12);
  --radius:28px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--brown);
  background:var(--cream);
  font-family:Georgia,"Times New Roman",serif;
  line-height:1.65;
}
body.admin-bar .site-header{top:32px}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
p{margin:0 0 1.2rem}
h1,h2,h3{font-weight:500;line-height:1.12;margin:0 0 1rem}
h1{font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.045em}
h2{font-size:clamp(2.1rem,4vw,4.2rem);letter-spacing:-.03em}
h3{font-size:1.45rem}
.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.eyebrow{
  font-family:Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:.72rem;
  color:var(--gold);
  font-weight:700;
}
.gold-rule{display:flex;align-items:center;gap:14px;width:220px;margin:22px 0}
.gold-rule:before,.gold-rule:after{content:"";height:1px;flex:1;background:var(--gold-light)}
.gold-rule span{width:8px;height:8px;border:1px solid var(--gold);transform:rotate(45deg)}

.site-header{
  position:sticky;top:0;z-index:1000;
  background:linear-gradient(90deg,rgba(247,241,232,.97),rgba(238,226,208,.97));
  border-bottom:1px solid rgba(184,149,88,.22);
  backdrop-filter:blur(16px);
}
.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;gap:16px;min-width:max-content}
.brand-mark{
  width:58px;height:58px;border:1px solid var(--gold);border-radius:50%;
  position:relative;display:grid;place-items:center;
}
.brand-mark:before,.brand-mark:after{
  content:"";position:absolute;border:1px solid var(--gold);border-radius:50%;width:34px;height:34px;
}
.brand-mark:before{transform:translateX(-8px)}
.brand-mark:after{transform:translateX(8px)}
.brand-mark i{width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;display:block}
.brand-copy strong{font-size:1.42rem;letter-spacing:.12em;font-weight:500;display:block}
.brand-copy small{font:600 .62rem/1 Arial,sans-serif;letter-spacing:.28em;color:var(--gold)}
.nav-toggle{display:none;border:0;background:none;font-size:1.5rem;color:var(--brown)}
.main-nav{display:flex;align-items:center;gap:26px;font:500 .84rem/1 Arial,sans-serif}
.main-nav a{padding:12px 0;border-bottom:1px solid transparent}
.main-nav a:hover{color:var(--gold);border-color:var(--gold)}
.button,.wp-block-button__link{
  display:inline-flex;align-items:center;justify-content:center;
  padding:15px 24px;border-radius:999px;
  background:var(--brown);color:#fff;
  font:700 .76rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;
  border:1px solid var(--brown);transition:.2s ease;cursor:pointer;
}
.button:hover{background:transparent;color:var(--brown)}
.button.button-gold{background:var(--gold);border-color:var(--gold)}
.button.button-ghost{background:transparent;color:var(--brown);border-color:rgba(59,49,42,.35)}

.hero{
  min-height:calc(100vh - 92px);
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 12% 20%,rgba(255,255,255,.9),transparent 30%),
    linear-gradient(110deg,#f8f3eb 0%,#efe4d6 52%,#ddd0be 100%);
}
.hero:before{
  content:"1  3  7  9";position:absolute;left:-1%;bottom:-7%;
  font-size:17vw;letter-spacing:.05em;color:rgba(184,149,88,.045);white-space:nowrap;
}
.hero-grid{min-height:calc(100vh - 92px);display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch}
.hero-copy{
  padding:84px 76px 72px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  position:relative;
  z-index:2;
  max-width:720px;
}
.hero-copy .lead{
  font-size:clamp(1.08rem,1.35vw,1.28rem);
  max-width:620px;
  color:var(--brown-soft);
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.hero-photo{
  min-height:650px;
  background:linear-gradient(140deg,#d8c7b2,#9b826d);
  position:relative;
  overflow:hidden;
  margin-left:-72px;
}
.hero-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:60% center;
}
.hero-photo.no-image:after{
  content:"Fotografia principală se adaugă din Aspect → Personalizare → Imagine principală";
  position:absolute;inset:auto 10% 10%;padding:18px 22px;background:rgba(251,248,242,.86);
  border:1px solid rgba(184,149,88,.35);font:600 .78rem/1.4 Arial,sans-serif;
}
.hero-photo:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(248,243,235,1) 0%,rgba(248,243,235,.72) 8%,rgba(248,243,235,.18) 24%,transparent 42%);
  pointer-events:none;
}
.section{padding:110px 0}
.section-soft{background:var(--ivory)}
.intro{text-align:center;max-width:850px;margin:auto}
.intro p{font-size:1.25rem;color:var(--brown-soft)}
.quote{font-size:clamp(1.65rem,3vw,2.7rem);font-style:italic}

.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.card{
  background:rgba(255,255,255,.65);border:1px solid rgba(184,149,88,.24);
  border-radius:var(--radius);padding:34px;box-shadow:0 10px 35px rgba(59,49,42,.05);
}
.card .number{font-size:.75rem;letter-spacing:.2em;color:var(--gold);font-family:Arial,sans-serif}
.card p{color:var(--brown-soft)}
.card a.more{font:700 .73rem/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--sage)}
.card-wide{grid-column:span 2}

.about-grid,.process-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.about-panel{
  min-height:570px;border-radius:var(--radius);
  background:linear-gradient(145deg,#d8c4a9,#88705e);
  overflow:hidden;box-shadow:var(--shadow)
}
.about-panel img{width:100%;height:100%;object-fit:cover}
.signature{
    font-family:cursive;
    font-size:1.2rem;
    font-weight:400;
    line-height:1.05;
    color:var(--gold);
    margin-top:28px;
}
}

.process-list{display:grid;gap:18px}
.process-item{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.process-item span{
  width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;
  display:grid;place-items:center;color:var(--gold)
}
.notice{padding:20px;border-left:3px solid var(--gold);background:rgba(184,149,88,.08);font-size:.95rem}

.contact-wrap{
  border-radius:36px;background:linear-gradient(130deg,#41352e,#6f5c4e);
  color:#fff;padding:65px;box-shadow:var(--shadow)
}
.contact-wrap h2,.contact-wrap p{color:#fff}
.contact-details{display:grid;gap:14px;margin:30px 0;font-family:Arial,sans-serif}
.contact-details a{color:#fff}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form .full{grid-column:1/-1}
.contact-form input,.contact-form select,.contact-form textarea{
  width:100%;padding:15px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.08);color:#fff;font:inherit;outline:none
}
.contact-form select option{color:#222}
.contact-form textarea{min-height:140px;resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.7)}
.form-message{grid-column:1/-1;padding:12px 0;font-family:Arial,sans-serif}

.site-footer{padding:46px 0;background:#2f2722;color:#f2eadf}
.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;font:500 .76rem/1.5 Arial,sans-serif}
.footer-small{font:400 .72rem/1.5 Arial,sans-serif;opacity:.75}

.page-content{padding:100px 0;min-height:60vh}
.page-content .entry-content{max-width:850px}
.screen-reader-text{position:absolute;left:-9999px}

@media(max-width:980px){
  .main-nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--cream);padding:24px;flex-direction:column;align-items:flex-start}
  .main-nav.open{display:flex}.nav-toggle{display:block}
  .hero-grid{grid-template-columns:1fr}.hero-copy{padding:80px 0 60px}.hero-photo{min-height:560px}
  .services-grid{grid-template-columns:1fr 1fr}.card-wide{grid-column:span 1}
  .about-grid,.process-grid,.contact-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  body.admin-bar .site-header{top:46px}
  .container{width:min(100% - 28px,var(--max))}
  .header-inner{min-height:76px}.brand-mark{width:46px;height:46px}.brand-copy strong{font-size:1.05rem}
  .main-nav{top:76px}
  .hero{min-height:auto}.hero-grid{min-height:auto}.hero-copy{padding:65px 0 52px}
  .hero-photo{min-height:460px;margin-inline:-14px}
  .section{padding:75px 0}.services-grid{grid-template-columns:1fr}
  .card{padding:27px}.contact-wrap{padding:34px 22px;border-radius:24px}
  .contact-form{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}
}


.hero h1{
  font-size:clamp(3.2rem,4.7vw,5.4rem);
  line-height:.98;
  max-width:760px;
  margin-bottom:1.1rem;
}
.hero-actions{margin-top:28px}
.header-inner{min-height:86px}
.site-header .button{padding:13px 20px;font-size:.7rem}
@media(max-width:980px){
  .hero-photo{margin-left:0}
  .hero h1{font-size:clamp(3rem,8vw,5rem)}
}
@media(max-width:680px){
  .hero-copy{padding:56px 0 42px}
  .hero h1{font-size:clamp(2.7rem,12vw,4rem)}
  .hero-photo img{object-position:58% center}
}


/* ===== ANIMA NUMERI v3 — rafinare completă ===== */

:root{
  --ivory:#f7f1e8;
  --ivory-2:#ede1d1;
  --cream:#fcfaf6;
  --brown:#3b312a;
  --brown-soft:#6d5d52;
  --gold:#b99252;
  --gold-light:#dfcba7;
  --sage:#68715f;
  --line:rgba(59,49,42,.13);
}

body{
  background:#fcfaf6;
  color:var(--brown);
}

.site-header{
  background:linear-gradient(90deg,rgba(249,244,236,.98),rgba(239,228,211,.98));
  box-shadow:0 8px 30px rgba(59,49,42,.035);
}

.header-inner{
  min-height:84px;
}

.brand-mark{
  width:54px;
  height:54px;
}

.brand-copy strong{
  font-size:1.34rem;
}

.main-nav{
  gap:23px;
  font-size:.79rem;
}

.hero{
  min-height:calc(100vh - 84px);
  background:
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.98),transparent 34%),
    linear-gradient(108deg,#fbf7f0 0%,#f2e8db 50%,#dfcfbd 100%);
}

.hero-grid{
  min-height:calc(100vh - 84px);
  grid-template-columns:46% 54%;
}

.hero-copy{
  padding:72px 54px 66px 0;
  max-width:none;
}

.hero .eyebrow{
  margin-bottom:10px;
}

.hero h1{
  font-size:clamp(3.2rem,4.35vw,5.05rem);
  line-height:1.01;
  letter-spacing:-.046em;
  max-width:700px;
}

.hero-copy .lead{
  font-size:clamp(1.06rem,1.25vw,1.22rem);
  line-height:1.55;
  max-width:560px;
}

.hero-copy > p:not(.lead){
  max-width:590px;
  font-size:1rem;
  line-height:1.65;
}

.hero-photo{
  min-height:650px;
  margin-left:-46px;
}

.hero-photo img{
  object-position:58% center;
  filter:saturate(.92) contrast(.98) brightness(1.02);
}

.hero-photo:before{
  background:
    linear-gradient(90deg,
      rgba(250,246,239,1) 0%,
      rgba(250,246,239,.92) 7%,
      rgba(250,246,239,.55) 16%,
      rgba(250,246,239,.14) 29%,
      transparent 43%);
}

.hero-actions{
  margin-top:24px;
}

.button,.wp-block-button__link{
  padding:14px 23px;
}

.section{
  padding:96px 0;
}

.section-soft{
  background:
    radial-gradient(circle at 85% 20%,rgba(255,255,255,.65),transparent 34%),
    var(--ivory);
}

.intro{
  max-width:780px;
}

.intro h2{
  max-width:760px;
  margin-inline:auto;
}

.intro p{
  font-size:1.18rem;
}

.services-grid{
  gap:20px;
  margin-top:42px;
}

.card{
  border-radius:22px;
  padding:31px;
  background:rgba(255,255,255,.74);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(59,49,42,.08);
  border-color:rgba(184,146,82,.45);
}

.card h3{
  margin-top:9px;
  margin-bottom:12px;
}

.about-grid{
  gap:76px;
}

.about-panel{
  min-height:600px;
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(223,203,167,.7),rgba(119,94,76,.8));
}

.about-panel:empty::after{
  content:"Adaugă fotografia pentru secțiunea Despre din Aspect → Personalizare";
  min-height:600px;
  display:grid;
  place-items:end center;
  padding:28px;
  color:#fff;
  font:600 .78rem/1.5 Arial,sans-serif;
  text-align:center;
}

.process-grid{
  gap:76px;
}

.process-item{
  grid-template-columns:58px 1fr;
  padding:23px 0;
}

.contact-wrap{
  border-radius:30px;
  padding:58px;
  background:
    radial-gradient(circle at 90% 10%,rgba(185,146,82,.20),transparent 30%),
    linear-gradient(130deg,#3d322c,#675448);
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  border-radius:10px;
  background:rgba(255,255,255,.10);
}

.site-footer{
  padding:42px 0;
}

@media(max-width:1100px){
  .hero-grid{grid-template-columns:48% 52%}
  .hero h1{font-size:clamp(3rem,4.3vw,4.6rem)}
  .hero-copy{padding-right:34px}
}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr}
  .hero-copy{padding:70px 0 54px}
  .hero-photo{margin-left:0;min-height:570px}
  .hero-photo:before{
    background:linear-gradient(180deg,rgba(250,246,239,.9),transparent 20%);
  }
}

@media(max-width:680px){
  .header-inner{min-height:74px}
  .hero{min-height:auto}
  .hero-grid{min-height:auto}
  .hero-copy{padding:52px 0 40px}
  .hero h1{font-size:clamp(2.55rem,11vw,3.75rem)}
  .hero-photo{min-height:470px}
  .section{padding:72px 0}
  .contact-wrap{padding:32px 20px}
}
/* Corectare fotografie secțiunea Despre */
.about-panel {
    min-height: 0;
    height: auto;
    background: transparent;
}

.about-panel img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}/* ===== DESPRE OLIVIA ===== */

.about-grid{
    align-items:flex-start;
}

/* ===== DESPRE OLIVIA ===== */

.about-grid{
    display:grid;
    grid-template-columns:minmax(620px, 715px) minmax(0, 1fr);
    gap:60px;
    align-items:start;
}

.about-panel:first-child{
    margin-top:45px;
    overflow:visible;
}

.about-panel:first-child img{
    display:block;
    width:100%;
    max-width:none;
    height:auto;
    object-fit:contain;
    transform:none;
}
    
/* ===== LĂȚIME ȘI ALINIERE GENERALĂ SITE ===== */

/* ===== LĂȚIME ȘI ALINIERE GENERALĂ SITE ===== */

@media (min-width: 1100px) {
    .container,
    .header-inner {
        width: calc(100% - 32px);
        max-width: none;
        margin-left: 16px;
        margin-right: 16px;
    }
}
}/* ===== PAGINI LEGALE ===== */

.page-header{
    padding:70px 0 30px;
}

.page-header h1,
.entry-title{
    font-size:clamp(2.6rem,5vw,4.2rem);
    line-height:1.1;
    margin-bottom:12px;
}

.entry-content{
    max-width:900px;
    margin:0 auto;
}

.entry-content h2{
    font-size:2rem;
    margin-top:50px;
}

.entry-content h3{
    font-size:1.55rem;
}

.entry-content p,
.entry-content li{
    font-size:1.08rem;
    line-height:1.85;
}/* ===== STIL PAGINI LEGALE ===== */

body.page .entry-title,
body.page main h1,
body.page article h1 {
    font-size: clamp(2.6rem, 4vw, 4rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.02em;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
}

body.page .entry-content h2,
body.page main h2,
body.page article h2 {
    font-size: 1.8rem !important;
    line-height: 1.2 !important;
    margin-top: 42px !important;
    margin-bottom: 18px !important;
}

body.page .entry-content h3,
body.page main h3,
body.page article h3 {
    font-size: 1.35rem !important;
    line-height: 1.3 !important;
}

body.page .entry-content p,
body.page .entry-content li {
    font-size: 1rem !important;
    line-height: 1.7 !important;
}/* PAGINI LEGALE */

.page-template-default .hero h1,
.page-template-default .page-hero h1,
.page-template-default article h1{
    font-size: 3.2rem !important;
    line-height: 1.1 !important;
    max-width: 900px;
}

@media (max-width: 768px){
    .page-template-default .hero h1,
    .page-template-default .page-hero h1,
    .page-template-default article h1{
        font-size: 2.2rem !important;
    }
}/* PAGINI LEGALE */
/* ===== TITLUL PAGINILOR LEGALE ===== */

body.page:not(.home) main h1:first-of-type,
body.page:not(.home) .section h1:first-of-type {
    font-size: 42px !important;
    line-height: 1.12 !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 28px !important;
}

@media (max-width: 768px) {
    body.page:not(.home) main h1:first-of-type,
    body.page:not(.home) .section h1:first-of-type {
        font-size: 32px !important;
    }
}
   
