/* HUBERT HOLIDAYS LTD — stil premium: bleumarin, crem cald, accent auriu discret. */
:root{--cream:#f7f2e9;--soft:#f7f2e9;--line:#e6ded0;--ink:#1a2233;--muted:#5b6474;--r:14px;--wrap:76rem}
body{font-size:1.0625rem;letter-spacing:.005em}
h1,h2,h3{font-weight:500;letter-spacing:-.02em}
h1{font-size:clamp(2.5rem,1.6rem + 4vw,4.6rem);line-height:1.04}
h2{font-size:clamp(1.9rem,1.3rem + 2vw,3rem);line-height:1.08}
h3{font-size:1.25rem;font-weight:600}
.eyebrow{color:var(--accent);letter-spacing:.2em;font-size:.74rem;display:inline-flex;align-items:center;gap:.7rem}
.eyebrow::before{content:'';width:2rem;height:1px;background:currentColor;opacity:.8}
.center .eyebrow,.sec-head.center .eyebrow{justify-content:center}
.lead{font-size:1.18rem;line-height:1.6}
/* butoane */
.btn{background:var(--accent);border-color:var(--accent);color:var(--dark);border-radius:2px;letter-spacing:.06em;text-transform:uppercase;font-size:.84rem;padding:1rem 1.7rem;font-weight:700}
.btn:hover{filter:none;background:#fff;border-color:#fff;color:var(--dark)}
.sec:not(.sec--dark):not(.sec--accent) .btn:hover,.form .btn:hover,.hdr .btn:hover{background:var(--dark);border-color:var(--dark);color:#fff}
.btn--ghost,.btn--ghost-light{border-radius:2px}
.btn--ghost-light{border-color:rgba(255,255,255,.55)}
.btn--ghost-light:hover{background:#fff;color:var(--dark);border-color:#fff}
.btn--light{background:var(--accent);border-color:var(--accent);color:var(--dark)}
.btn--sm{padding:.7rem 1.2rem;font-size:.76rem}
/* antet */
.hdr{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.hdr__in{min-height:5rem}
.brand__name{font-family:var(--fh);font-weight:500;font-size:1.45rem;color:var(--primary);letter-spacing:-.01em}
.brand__sub{color:var(--accent);font-weight:600;letter-spacing:.18em;font-size:.62rem}
.nav a{font-size:.93rem;font-weight:500}
.nav a[aria-current]{box-shadow:inset 0 -1px 0 var(--accent)}
/* poza mare */
.hero{min-height:clamp(32rem,88vh,52rem)}
.hero--m{min-height:clamp(24rem,60vh,34rem)}
.hero::after{background:linear-gradient(100deg,color-mix(in srgb,var(--dark) 92%,transparent) 0%,color-mix(in srgb,var(--dark) 70%,transparent) 48%,color-mix(in srgb,var(--dark) 25%,transparent) 100%)}
.hero__bg img{animation:heroZoom 18s ease-out both}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero h1{max-width:15ch}
.hero .eyebrow{color:var(--accent);opacity:1}
.hero__sub{font-size:clamp(1.1rem,1rem + .5vw,1.35rem);max-width:36rem;color:rgba(255,255,255,.88)}
.hero__in{padding-block:6rem 5rem}
/* secțiuni */
.sec{padding-block:clamp(4rem,9vw,7.5rem)}
.sec--soft{background:var(--cream)}
.sec--dark{background:var(--dark)}
.sec-head{margin-bottom:3rem}
.sec-head.center h2{max-width:24ch;margin-inline:auto}
.page-head{background:var(--cream);padding-top:4rem}
/* carduri */
.card{border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.02)}
a.card:hover{transform:translateY(-6px);box-shadow:0 26px 50px -30px color-mix(in srgb,var(--dark) 60%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.card__img{overflow:hidden}.card__img img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
a.card:hover .card__img img{transform:scale(1.05)}
.card__body{padding:1.5rem 1.6rem 1.7rem}
.card__body h3{font-family:var(--fh);font-weight:500;font-size:1.35rem}
.card__more{color:var(--primary);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}
a.card:hover .card__more{color:var(--accent)}
/* pași */
.steps li{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:1.6rem 0 0}
.step__n{background:none;color:var(--accent);font-family:var(--fh);font-size:2.4rem;font-weight:400;width:auto;height:auto;margin-bottom:.6rem;display:block;line-height:1}
.step__n::before{content:'0'}
.steps h3{font-family:var(--fh);font-weight:500;font-size:1.3rem}
/* liste */
.checks strong{font-weight:600}
.badges li{border-left:1px solid var(--accent);background:transparent;padding:.4rem 1.2rem}
.badges strong{font-family:var(--fh);font-weight:500;font-size:1.15rem}
.split__img img{border-radius:var(--r);aspect-ratio:5/4}
.pains li{background:#fff;border-radius:var(--r);font-weight:500}
.pains__close{color:var(--primary);font-style:italic}
.faq details{padding:1.3rem 0}.faq summary{font-family:var(--fh);font-weight:500;font-size:1.2rem}
.cta{position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;inset:auto -10% -60% auto;width:40rem;height:40rem;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 65%);pointer-events:none}
.cta h2{font-size:clamp(1.8rem,1.3rem + 2vw,2.9rem);max-width:22ch;margin-inline:auto}
.form{border-radius:var(--r);border-color:var(--line);box-shadow:0 30px 60px -45px color-mix(in srgb,var(--dark) 55%,transparent)}
.contact-card{background:var(--dark);color:rgba(255,255,255,.85)}.contact-card h3{color:#fff}.contact-card a{color:#fff}.contact-card li{border-color:rgba(255,255,255,.14)}.contact-card li span{color:var(--accent)}.contact-card .small{color:rgba(255,255,255,.7)}
.ftr{background:var(--dark)}
.ftr__name{font-weight:500}
.ftr__h{color:var(--accent)}
/* animație la derulare */
.anim .rv{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.anim .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.hero__bg img{animation:none}.anim .rv{opacity:1;transform:none}}
.btn--ghost{background:transparent;color:var(--primary);border-color:var(--primary)}
.btn--ghost-light{background:transparent;color:#fff}
.hero h1{max-width:20ch}
/* ultimul card singur pe rând: devine card lat, cu poza în stânga */
@media (min-width:60rem){
  .cards--3>.card:last-child:nth-child(3n+1),.cards--4>.card:last-child:nth-child(4n+1){grid-column:1/-1;flex-direction:row;align-items:stretch}
  .cards--3>.card:last-child:nth-child(3n+1) .card__img,.cards--4>.card:last-child:nth-child(4n+1) .card__img{flex:0 0 42%}
  .cards--3>.card:last-child:nth-child(3n+1) .card__img img,.cards--4>.card:last-child:nth-child(4n+1) .card__img img{height:100%;aspect-ratio:auto}
  .cards--3>.card:last-child:nth-child(3n+1) .card__body,.cards--4>.card:last-child:nth-child(4n+1) .card__body{justify-content:center;padding:2.2rem 2.6rem}
  .cards--3>.card:last-child:nth-child(3n+1) h3,.cards--4>.card:last-child:nth-child(4n+1) h3{font-size:1.7rem}
}
