/* FOTOGRAPH - pagina Contact (se incarca doar pe pagina Contact). */
.site-main--contact{max-width:none;margin:0;padding:0}
.fgc{--fgc-line:rgba(255,255,255,.32);display:block}

/* ---- Hero ---- */
.fgc-hero{padding:clamp(7.5rem,13vw,11rem) var(--fg-pad) clamp(2.2rem,4.5vw,3.5rem)}
.fgc-title{margin-top:1.4rem;font:400 clamp(3.4rem,18vw,21rem)/.88 var(--fg-serif);letter-spacing:-.045em;text-transform:uppercase}
.fgc-title em{font-style:italic}
.fgc-line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}
.fgc-line>span{display:block;animation:fgc-rise 1.4s var(--fg-ease) both}
.fgc-line:nth-child(2)>span{animation-delay:.12s}
.fgc-line:nth-child(3)>span{animation-delay:.24s}
@keyframes fgc-rise{from{transform:translate3d(0,112%,0)}to{transform:none}}
.fgc-hero__row{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem 3rem;flex-wrap:wrap;margin-top:clamp(2rem,4vw,3.5rem)}
.fgc-lead{max-width:36ch;font:300 clamp(1rem,1.3vw,1.2rem)/1.7 var(--fg-sans);color:#d2d2d2}
.fgc-jump{display:inline-flex;align-items:center;gap:1rem;padding:.9rem 0;border-bottom:1px solid currentColor;font:400 .8rem/1 var(--fg-sans);letter-spacing:.24em;text-transform:uppercase}
.fgc-jump i{position:relative;display:block;width:1px;height:2.2rem;background:currentColor;transition:height .5s var(--fg-ease)}
.fgc-jump i::after{content:"";position:absolute;left:-3px;bottom:0;width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.fgc-jump:hover i,.fgc-jump:focus-visible i{height:3rem}

/* ---- Corp: detalii + formular ---- */
.fgc-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,3vw,3rem);margin:0 var(--fg-pad);padding:clamp(2.5rem,5vw,4rem) 0 clamp(5rem,10vw,9rem);border-top:1px solid var(--fg-line)}
.fgc-details{grid-column:1 / 5;align-self:start;position:sticky;top:7rem;display:grid;gap:clamp(1.6rem,2.6vw,2.4rem)}
.fgc-details .lab{display:block;margin-bottom:.35rem;font:400 .7rem/1.4 var(--fg-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--fg-grey)}
.fgc-details p,.fgc-details div{font:400 clamp(1.2rem,1.9vw,1.8rem)/1.3 var(--fg-serif);letter-spacing:-.01em;overflow-wrap:anywhere}
.fgc-details a:hover,.fgc-details a:focus-visible{text-decoration:underline;text-underline-offset:.2em}
.fgc-details .social-list{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}
.fgc-details .hint{font:400 .85rem/1.5 var(--fg-sans);color:var(--fg-grey)}
.fgc-formwrap{grid-column:6 / 13;min-width:0}
.fgc-form-wrap{margin:0;max-width:none}
.fgc-intro{margin-bottom:2rem;max-width:46ch;color:#d2d2d2}

/* ---- Formular ---- */
.fgc-form{display:grid;gap:clamp(1.8rem,3vw,2.6rem);color-scheme:dark}
.fgc-form[hidden],.fgc-done[hidden]{display:none}
.fgc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.6rem,2.6vw,2.4rem) clamp(1.4rem,3vw,3rem)}
.fgc-field{position:relative;display:grid;gap:.2rem;min-width:0;align-content:start}
.fgc-field--full{grid-column:1 / -1}
.fgc-field--date{z-index:5}
.fgc-field label{font:400 .72rem/1.4 var(--fg-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--fg-grey)}
.fgc-form input[type=text],.fgc-form input[type=email],.fgc-form input[type=tel],.fgc-form input[type=date],.fgc-form select,.fgc-form textarea{display:block;width:100%;margin:0;padding:.7rem 0 .8rem;background:transparent;color:#fff;border:0;border-bottom:1px solid var(--fgc-line);border-radius:0;font:300 clamp(1.1rem,1.5vw,1.3rem)/1.4 var(--fg-sans);outline:0;transition:border-color .3s,box-shadow .3s;-webkit-appearance:none;appearance:none}
.fgc-form textarea{min-height:9rem;resize:vertical}
.fgc-form input:focus,.fgc-form select:focus,.fgc-form textarea:focus,.fgc-form input:focus-visible,.fgc-form select:focus-visible,.fgc-form textarea:focus-visible{border-bottom-color:#fff;box-shadow:0 1px 0 #fff;outline:0}
.fgc-form input:-webkit-autofill{-webkit-text-fill-color:#fff;box-shadow:0 0 0 100px #000 inset}
.fgc-field--date input,.fgc-field--select select{padding-right:2.4rem;cursor:pointer}
.fgc-field--date::after,.fgc-field--select::after{content:"";position:absolute;right:.2rem;bottom:1.15rem;width:1.1rem;height:1.1rem;pointer-events:none;background:center/contain no-repeat}
.fgc-field--select::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.4'%3E%3Cpath d='M5 9l7 7 7-7'/%3E%3C/svg%3E")}
.fgc-field--date::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.4'%3E%3Crect x='3.5' y='5' width='17' height='15.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E")}
/* Calendarul nativ se deschide la click oriunde in camp (functioneaza si fara JavaScript) */
.fgc-form input[type=date]::-webkit-calendar-picker-indicator{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
.fgc-form input[type=date]::-webkit-date-and-time-value{text-align:left}
.fgc-form select option{background:#fff;color:#000}
.fgc-form select:invalid{color:#9a9a9a}

/* Lista de tipuri personalizata (Chrome/Edge recente); in rest se foloseste lista nativa */
@supports (appearance:base-select){
.fgc-form select,.fgc-form select::picker(select){appearance:base-select}
.fgc-form select::picker-icon{display:none}
.fgc-form select::picker(select){margin-top:.4rem;padding:.4rem;background:#fff;color:#000;border:0;box-shadow:0 24px 70px rgba(0,0,0,.65);font:400 1rem/1.3 var(--fg-sans)}
.fgc-form select option{display:block;padding:.95rem 1rem;background:#fff;color:#000;font:400 1rem/1.3 var(--fg-sans);cursor:pointer}
.fgc-form select option::checkmark{display:none}
.fgc-form select option:hover,.fgc-form select option:focus{background:#ececec}
.fgc-form select option:checked{background:#000;color:#fff}
.fgc-form select option:disabled{display:none}
.fgc-form select selectedcontent{display:block}
}

/* Acord */
.fgc-consent{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start;cursor:pointer;font:300 .92rem/1.5 var(--fg-sans);color:#d2d2d2}
.fgc-consent input{-webkit-appearance:none;appearance:none;position:relative;width:1.3rem;height:1.3rem;margin:.1rem 0 0;border:1px solid #fff;background:transparent;cursor:pointer}
.fgc-consent input:checked{background:#fff}
.fgc-consent input:checked::after{content:"";position:absolute;left:.4rem;top:.12rem;width:.35rem;height:.7rem;border:solid #000;border-width:0 2px 2px 0;transform:rotate(45deg)}
.fgc-consent input:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Buton */
.fgc-submit{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:min(100%,22rem);padding:1.25rem 1.6rem;background:#fff;color:#000;border:1px solid #fff;font:500 .82rem/1 var(--fg-sans);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background .35s,color .35s}
.fgc-submit i{position:relative;display:block;width:2.6rem;height:1px;background:currentColor;transition:width .5s var(--fg-ease)}
.fgc-submit i::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.fgc-submit:hover,.fgc-submit:focus-visible{background:#000;color:#fff}
.fgc-submit:hover i,.fgc-submit:focus-visible i{width:3.6rem}
.fgc-submit[disabled]{opacity:.55;cursor:progress}

/* Mesaje */
.fgc-msg{min-height:0;margin:0;font:400 .95rem/1.5 var(--fg-sans)}
.fgc-msg:empty{display:none}
.fgc-msg.is-error{padding:.9rem 1.1rem;border:1px solid #fff}
.fgc-done{display:grid;gap:1rem;align-content:start;padding:clamp(1.6rem,3vw,2.6rem);border:1px solid #fff}
.fgc-done__title{font:400 clamp(2.2rem,5vw,4.2rem)/1 var(--fg-serif);letter-spacing:-.03em}
.fgc-done__text{max-width:38ch;color:#d2d2d2}
.fgc-again{justify-self:start;margin-top:.6rem;padding:.4rem 0;border-bottom:1px solid currentColor;font:400 .78rem/1 var(--fg-sans);letter-spacing:.22em;text-transform:uppercase;background:none;color:inherit;cursor:pointer}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---- Calendar personalizat (adaugat de contact.js) ---- */
.fgc-cal{position:absolute;z-index:30;top:calc(100% + .5rem);left:0;width:min(21.5rem,calc(100vw - 2 * var(--fg-pad)));padding:1rem 1rem .8rem;background:#fff;color:#000;box-shadow:0 24px 70px rgba(0,0,0,.65)}
.fgc-cal[hidden]{display:none}
.fgc-cal__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.8rem}
.fgc-cal__title{font:400 1.3rem/1.2 var(--fg-serif);letter-spacing:-.01em;text-transform:capitalize}
.fgc-cal__nav{display:inline-flex;gap:.2rem}
.fgc-cal button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.fgc-cal__nav button{width:2.4rem;height:2.4rem;font-size:1.1rem;line-height:1}
.fgc-cal__nav button:hover:not([disabled]){background:#ececec}
.fgc-cal__nav button[disabled]{opacity:.25;cursor:default}
.fgc-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.fgc-cal__dow{padding:.3rem 0;font:500 .66rem/1 var(--fg-sans);letter-spacing:.12em;text-transform:uppercase;color:#777}
.fgc-cal__day{height:2.55rem;font:400 .95rem/1 var(--fg-sans)}
.fgc-cal__day:hover:not([disabled]){background:#ececec}
.fgc-cal__day.is-today{box-shadow:inset 0 -2px 0 #000}
.fgc-cal__day[aria-pressed=true]{background:#000;color:#fff}
.fgc-cal__day[disabled]{opacity:.25;cursor:default}
.fgc-cal__foot{display:flex;justify-content:space-between;margin-top:.6rem;padding-top:.6rem;border-top:1px solid #ddd}
.fgc-cal__foot button{padding:.4rem 0;font:400 .7rem/1 var(--fg-sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:underline;text-underline-offset:.25em}
.fgc-cal :focus-visible{outline:2px solid #000;outline-offset:1px}
.fgc-form.fgc-js input[type=date],.fgc-form.fgc-js input[readonly]{cursor:pointer}

/* ---- Aparitii la scroll, doar CSS (fara JavaScript) ---- */
@supports (animation-timeline:view()){
@media (prefers-reduced-motion:no-preference){
.fgc-details>*,.fgc-field,.fgc-consent,.fgc-submit{animation:fgc-in linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
}
}
@keyframes fgc-in{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fgc-line>span{animation:none}}

@media (max-width:900px){
.fgc-body{grid-template-columns:minmax(0,1fr);row-gap:clamp(2.5rem,8vw,3.5rem)}
.fgc-details,.fgc-formwrap{grid-column:1 / -1;position:static}
.fgc-details{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
.fgc-grid{grid-template-columns:minmax(0,1fr)}
.fgc-details{grid-template-columns:minmax(0,1fr)}
.fgc-submit{width:100%}
.fgc-hero__row{align-items:flex-start}
}
