/* Fine Taraa – contact (v2) */
.ft-ct-cards{position:relative;z-index:2;margin-top:-52px}
.ft-ct-cards__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ft-ct-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;padding:30px 18px 22px;box-shadow:0 18px 44px rgba(92,10,36,.12);border-bottom:3px solid var(--ft-gold);transition:transform .45s var(--ft-ease),box-shadow .45s,background .45s}
.ft-ct-card>span{width:62px;height:62px;border-radius:50%;background:var(--ft-gold-soft);color:var(--ft-maroon);display:flex;align-items:center;justify-content:center;margin-bottom:12px;transition:.45s var(--ft-ease)}
.ft-ct-card b{font-family:var(--ft-font-head);font-size:25px;color:var(--ft-maroon);line-height:1.1}
.ft-ct-card em{font-style:normal;font-size:14px;margin-top:4px;word-break:break-word}
.ft-ct-card small{margin-top:8px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ft-gold-dark)}
.ft-ct-card:hover{transform:translateY(-10px);background:var(--ft-maroon);box-shadow:0 28px 54px rgba(92,10,36,.3)}
.ft-ct-card:hover b,.ft-ct-card:hover em{color:#fff}.ft-ct-card:hover small{color:var(--ft-gold)}
.ft-ct-card:hover>span{background:var(--ft-gold);color:var(--ft-maroon-dark);transform:rotate(-8deg) scale(1.08)}
.ft-ct-card--wa>span{background:#e3f6ea;color:#1faa59}
.ft-ct{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:start}
.ft-ct__form{position:relative;background:#fff;border:1px solid var(--ft-line);padding:44px;box-shadow:0 24px 60px rgba(92,10,36,.07)}
.ft-ct__form::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--ft-maroon),var(--ft-gold),var(--ft-maroon))}
.ft-ct__form h2{font-size:clamp(28px,3.2vw,40px);margin:4px 0 8px}
.ft-ct__lead{color:var(--ft-muted);margin-bottom:22px}
.ft-ct__topics{border:0;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}
.ft-ct__topics legend{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ft-gold-dark);font-weight:600;margin-bottom:10px;padding:0;width:100%}
.ft-ct__topics label{cursor:pointer}.ft-ct__topics input{position:absolute;opacity:0}
.ft-ct__topics span{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ft-line);border-radius:99px;padding:9px 16px;font-size:13px;transition:.3s var(--ft-ease);background:var(--ft-cream)}
.ft-ct__topics label:hover span{border-color:var(--ft-gold)}
.ft-ct__topics input:checked+span{background:var(--ft-maroon);color:#fff;border-color:var(--ft-maroon);box-shadow:0 8px 18px rgba(92,10,36,.22)}
.ft-ct__topics input:focus-visible+span{outline:2px solid var(--ft-gold);outline-offset:2px}
.ft-ct__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ft-fl{position:relative;margin-bottom:16px}
.ft-fl .ft-input,.ft-fl .ft-textarea{padding:22px 16px 8px;background:var(--ft-cream);border:1px solid var(--ft-line);border-radius:0;width:100%}
.ft-fl .ft-textarea{min-height:140px;resize:vertical}
.ft-fl label{position:absolute;left:16px;top:16px;font-size:14px;color:var(--ft-muted);pointer-events:none;transition:.2s var(--ft-ease);transform-origin:left}
.ft-fl .ft-input:focus+label,.ft-fl .ft-input:not(:placeholder-shown)+label,.ft-fl .ft-textarea:focus+label,.ft-fl .ft-textarea:not(:placeholder-shown)+label{top:6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ft-gold-dark);font-weight:600}
.ft-fl .ft-input:focus,.ft-fl .ft-textarea:focus{background:#fff;border-color:var(--ft-gold);box-shadow:0 0 0 3px rgba(201,164,92,.18);outline:0}
.ft-fl .is-invalid{border-color:var(--ft-danger);background:#fff6f5}
.ft-ct__foot{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.ft-ct__foot span{display:inline-flex;gap:6px;align-items:center;font-size:12px;color:var(--ft-muted)}
.ft-ct__done{position:absolute;inset:0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;animation:ftModalIn .5s both}
.ft-ct__done .ft-icon{color:#fff;background:var(--ft-success);border-radius:50%;padding:14px;width:76px;height:76px;margin-bottom:10px}
.ft-ct__done[hidden]{display:none}
.ft-ct__side{background:var(--ft-maroon);color:#fff;padding:32px;position:sticky;top:calc(var(--ft-header-h) + 20px)}
.ft-ct__side h3{color:#fff;font-size:26px;margin:14px 0 10px}
.ft-ct__open{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.08em;background:rgba(255,255,255,.1);padding:7px 14px;border-radius:99px}
.ft-ct__open i{width:9px;height:9px;border-radius:50%;background:#aaa}
.ft-ct__open.is-open i{background:#3ddc84;animation:ftDot 1.8s infinite}.ft-ct__open.is-closed i{background:#ff7d7d}
.ft-ct__hours li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:13px;color:rgba(255,255,255,.8)}.ft-ct__hours b{color:var(--ft-gold);font-weight:600;text-align:right}
.ft-ct__map{margin:20px 0;aspect-ratio:4/3;border:3px solid rgba(201,164,92,.5);overflow:hidden;background:#32041a}
.ft-ct__map iframe{width:100%;height:100%;border:0;filter:grayscale(.3) contrast(1.05)}
.ft-ct__social{display:flex;gap:10px}.ft-ct__social a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:.3s}
.ft-ct__social a:hover{background:var(--ft-gold);border-color:var(--ft-gold);color:var(--ft-maroon-dark);transform:translateY(-3px)}
.ft-ct-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ft-ct-quick a{display:flex;flex-direction:column;gap:4px;padding:26px 22px;border:1px solid var(--ft-line);background:var(--ft-cream);transition:.4s var(--ft-ease)}
.ft-ct-quick a .ft-icon{color:var(--ft-gold-dark);margin-bottom:8px;transition:.4s}
.ft-ct-quick b{font-family:var(--ft-font-head);font-size:22px;color:var(--ft-maroon);line-height:1.15}.ft-ct-quick span{font-size:13px;color:var(--ft-muted)}
.ft-ct-quick a:hover{transform:translateY(-6px);border-color:var(--ft-gold);box-shadow:var(--ft-shadow);background:#fff}.ft-ct-quick a:hover .ft-icon{transform:translateX(6px)}
@media (max-width:991px){.ft-ct{grid-template-columns:1fr}.ft-ct__side{position:static}.ft-ct-cards__grid,.ft-ct-quick{grid-template-columns:1fr 1fr}.ft-ct__form{padding:28px 20px}}
@media (max-width:560px){.ft-ct-cards{margin-top:-30px}.ft-ct-cards__grid{gap:10px}.ft-ct-card{padding:22px 10px 16px}.ft-ct-card b{font-size:20px}.ft-ct-card em{font-size:12px}.ft-ct__row{grid-template-columns:1fr;gap:0}.ft-ct-quick{gap:10px}.ft-ct-quick a{padding:18px 14px}}
