/* Sohil — Dengiz sohili: osmon, ko‘tarilayotgan quyosh, harakatlanuvchi to‘lqinlar va qumga yozilgan sana. Ranglar manifest sxemasidan; animatsiyalar prefers-reduced-motion da o‘chadi. */
.t-sohil .inv{background:var(--p2);color:var(--tx)}
.t-sohil .content{padding:0 0 48px;gap:26px}
.t-sohil .content>section{padding-inline:22px}
.t-sohil .small{font-family:var(--fb);font-size:10px;letter-spacing:.3em;color:var(--gl)}
/* Birinchi ekran: osmon, dengiz, qum */
.t-sohil .sh-hero{position:relative;padding:0;overflow:hidden;min-height:74vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--sky1) 0%,var(--sky2) 52%,var(--sea) 53%)}
.t-sohil .sh-sky{position:absolute;inset:0;pointer-events:none}
.t-sohil .sh-sun{position:absolute;left:50%;top:40%;width:120px;height:120px;margin-left:-60px;border-radius:50%;background:radial-gradient(circle at 50% 40%,var(--sun),color-mix(in srgb,var(--sun) 70%,var(--sky2)));box-shadow:0 0 60px var(--w1);animation:shRise 3.5s cubic-bezier(.2,.7,.2,1) both}
@keyframes shRise{from{transform:translateY(90px);opacity:.3}to{transform:none;opacity:1}}
.t-sohil .sh-bird{position:absolute;width:26px;height:10px;border:2px solid var(--tx2);border-width:2px 0 0;border-radius:50% 50% 0 0;opacity:.6;animation:shFly 14s linear infinite}
.t-sohil .sh-bird::after{content:"";position:absolute;left:12px;top:-2px;width:14px;height:10px;border:2px solid var(--tx2);border-width:2px 0 0;border-radius:50% 50% 0 0}
.t-sohil .sh-bird.b1{left:14%;top:16%}
.t-sohil .sh-bird.b2{left:60%;top:11%;transform:scale(.7);animation-duration:19s;animation-delay:-6s}
@keyframes shFly{from{translate:-30px 0}50%{translate:40px -8px}to{translate:-30px 0}}
.t-sohil .sh-in{position:relative;z-index:2;padding:96px 22px 0;flex:1}
.t-sohil .sh-eb{font-family:var(--fb);font-size:10px;letter-spacing:.42em;text-transform:uppercase;color:var(--tx2);margin-bottom:14px}
.t-sohil .sh-ph{width:140px;height:140px;margin:0 auto 14px;border-radius:50%;overflow:hidden;border:4px solid rgba(255,255,255,.85);box-shadow:0 14px 30px rgba(0,0,0,.14)}
.t-sohil .sh-ph img{width:100%;height:100%;object-fit:cover}
.t-sohil .names{font-family:var(--fs);font-size:clamp(40px,12vw,56px);line-height:1.05;margin:4px 0 2px;color:var(--tx);text-shadow:0 2px 12px rgba(255,255,255,.5)}
.t-sohil .names .amp{font-size:.6em;color:var(--gl)}
.t-sohil .hero .host-of{color:var(--tx2)}
.t-sohil .hero .host{color:var(--tx2);font-size:16px}
.t-sohil .hero .host .host-line{color:var(--tx)}
.t-sohil .quote{margin:14px auto 0;max-width:30ch;padding:0;font-family:var(--fd);font-style:italic;font-size:16px;color:var(--tx2)}
/* To'lqinlar — uch qatlam, turli tezlik */
.t-sohil .sh-sea{position:relative;height:110px;margin-top:20px;z-index:1}
.t-sohil .sh-sea i{position:absolute;left:0;right:0;bottom:0;height:60px;background-repeat:repeat-x;background-size:400px 60px;animation:shWave 9s linear infinite}
.t-sohil .sh-sea .w1{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='60' viewBox='0 0 400 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30c50-20 100-20 150 0s100 20 150 0 75-20 100 0v30H0z' fill='rgba(255,255,255,0.35)'/%3E%3C/svg%3E");bottom:44px;opacity:.7;animation-duration:12s}
.t-sohil .sh-sea .w2{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='60' viewBox='0 0 400 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30c50-20 100-20 150 0s100 20 150 0 75-20 100 0v30H0z' fill='rgba(255,255,255,0.5)'/%3E%3C/svg%3E");bottom:22px;opacity:.85;animation-duration:8s;animation-direction:reverse}
.t-sohil .sh-sea .w3{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='60' viewBox='0 0 400 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30c50-20 100-20 150 0s100 20 150 0 75-20 100 0v30H0z' fill='rgba(255,255,255,0.8)'/%3E%3C/svg%3E");bottom:0;animation-duration:6s}
@keyframes shWave{from{background-position-x:0}to{background-position-x:400px}}
.t-sohil .sh-sand{position:relative;z-index:2;background:var(--sand);padding:22px 22px 26px;
  background-image:radial-gradient(circle,rgba(0,0,0,.05) 0 1px,transparent 1.5px);background-size:9px 9px}
.t-sohil .sh-date{display:flex;flex-direction:column;gap:6px}
.t-sohil .sh-date b{font-family:var(--fn);font-size:30px;letter-spacing:.12em;font-weight:600;color:var(--tx)}
.t-sohil .sh-date span{font-family:var(--fb);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--tx2)}
/* Bloklar — oq shag'al toshlar */
.t-sohil .salut,.t-sohil .greeting{margin-inline:22px;background:var(--card);border-radius:24px;padding:22px 18px;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.t-sohil .greeting p{font-family:var(--fd);font-style:normal;font-size:18px;line-height:1.6;color:var(--tx)}
.t-sohil .greeting p::first-line{font-family:var(--fs);font-size:30px;line-height:1.6;color:var(--gl)}
.t-sohil .datebig{font-family:var(--fn);font-size:54px;color:var(--tx)}
.t-sohil .datebig small{color:var(--gl)}
.t-sohil .cd div{background:var(--card);border:0;border-radius:40px 40px 22px 22px;box-shadow:0 6px 16px rgba(0,0,0,.06)}
.t-sohil .cd b{color:var(--gl)}
.t-sohil .frame{border:0;background:transparent;padding:0}
.t-sohil .ev,.t-sohil .parents div,.t-sohil .note,.t-sohil .wi,.t-sohil .next,.t-sohil .tl .it,.t-sohil .gift .card,.t-sohil .smp{background:var(--card);border:0;border-radius:22px;box-shadow:0 8px 20px rgba(0,0,0,.06)}
.t-sohil .ev .t{color:var(--gl)}
.t-sohil .today{border-radius:24px;background:linear-gradient(135deg,var(--gl),var(--sea))}
.t-sohil .btn{border-radius:999px}
.t-sohil .btn.solid{color:#fff}
.t-sohil .seg button,.t-sohil .form input,.t-sohil .form select,.t-sohil .form textarea{border-radius:16px;background:rgba(255,255,255,.8)}
.t-sohil .together{font-family:var(--fn);color:var(--tx)}
.t-sohil .together small{font-family:var(--fs);color:var(--gl)}
.t-sohil .closing{font-family:var(--fs);font-size:30px;color:var(--gl)}
.t-sohil .cal{display:none}
.t-sohil .gate{background:linear-gradient(180deg,var(--sky1),var(--sky2) 60%,var(--sea))}
.t-sohil .env-back,.t-sohil .env-front,.t-sohil .env-flap{border-radius:18px}
.t-sohil .gate-names{color:var(--tx)}
@media (min-width:520px){.t-sohil .sh-hero{min-height:70vh}}
@media (prefers-reduced-motion:reduce){.t-sohil .sh-sea i,.t-sohil .sh-sun,.t-sohil .sh-bird{animation:none}}
