PNG  IHDRX cHRMz&u0`:pQ<bKGD pHYsodtIME MeqIDATxw]Wug^Qd˶ 6`!N:!@xI~)%7%@Bh&`lnjVF29gΨ4E$|>cɚ{gk= %,a KX%,a KX%,a KX%,a KX%,a KX%,a KX%, b` ǟzeאfp]<!SJmɤY޲ڿ,%c ~ع9VH.!Ͳz&QynֺTkRR.BLHi٪:l;@(!MԴ=žI,:o&N'Kù\vRmJ雵֫AWic H@" !: Cé||]k-Ha oݜ:y F())u]aG7*JV@J415p=sZH!=!DRʯvɱh~V\}v/GKY$n]"X"}t@ xS76^[bw4dsce)2dU0 CkMa-U5tvLƀ~mlMwfGE/-]7XAƟ`׮g ewxwC4\[~7@O-Q( a*XGƒ{ ՟}$_y3tĐƤatgvێi|K=uVyrŲlLӪuܿzwk$m87k( `múcE)"@rK( z4$D; 2kW=Xb$V[Ru819קR~qloѱDyįݎ*mxw]y5e4K@ЃI0A D@"BDk_)N\8͜9dz"fK0zɿvM /.:2O{ Nb=M=7>??Zuo32 DLD@D| &+֎C #B8ַ`bOb $D#ͮҪtx]%`ES`Ru[=¾!@Od37LJ0!OIR4m]GZRJu$‡c=%~s@6SKy?CeIh:[vR@Lh | (BhAMy=݃  G"'wzn޺~8ԽSh ~T*A:xR[ܹ?X[uKL_=fDȊ؂p0}7=D$Ekq!/t.*2ʼnDbŞ}DijYaȲ(""6HA;:LzxQ‘(SQQ}*PL*fc\s `/d'QXW, e`#kPGZuŞuO{{wm[&NBTiiI0bukcA9<4@SӊH*؎4U/'2U5.(9JuDfrޱtycU%j(:RUbArLֺN)udA':uGQN"-"Is.*+k@ `Ojs@yU/ H:l;@yyTn}_yw!VkRJ4P)~y#)r,D =ě"Q]ci'%HI4ZL0"MJy 8A{ aN<8D"1#IJi >XjX֔#@>-{vN!8tRݻ^)N_╗FJEk]CT՟ YP:_|H1@ CBk]yKYp|og?*dGvzنzӴzjֺNkC~AbZƷ`.H)=!QͷVTT(| u78y֮}|[8-Vjp%2JPk[}ԉaH8Wpqhwr:vWª<}l77_~{s۴V+RCģ%WRZ\AqHifɤL36: #F:p]Bq/z{0CU6ݳEv_^k7'>sq*+kH%a`0ԣisqにtү04gVgW΂iJiS'3w.w}l6MC2uԯ|>JF5`fV5m`Y**Db1FKNttu]4ccsQNnex/87+}xaUW9y>ͯ骵G{䩓Գ3+vU}~jJ.NFRD7<aJDB1#ҳgSb,+CS?/ VG J?|?,2#M9}B)MiE+G`-wo߫V`fio(}S^4e~V4bHOYb"b#E)dda:'?}׮4繏`{7Z"uny-?ǹ;0MKx{:_pÚmFמ:F " .LFQLG)Q8qN q¯¯3wOvxDb\. BKD9_NN &L:4D{mm o^tֽ:q!ƥ}K+<"m78N< ywsard5+вz~mnG)=}lYݧNj'QJS{S :UYS-952?&O-:W}(!6Mk4+>A>j+i|<<|;ر^߉=HE|V#F)Emm#}/"y GII웻Jі94+v뾧xu~5C95~ūH>c@덉pʃ1/4-A2G%7>m;–Y,cyyaln" ?ƻ!ʪ<{~h~i y.zZB̃/,雋SiC/JFMmBH&&FAbϓO^tubbb_hZ{_QZ-sύodFgO(6]TJA˯#`۶ɟ( %$&+V'~hiYy>922 Wp74Zkq+Ovn錄c>8~GqܲcWꂎz@"1A.}T)uiW4="jJ2W7mU/N0gcqܗOO}?9/wìXžΏ0 >֩(V^Rh32!Hj5`;O28؇2#ݕf3 ?sJd8NJ@7O0 b־?lldщ̡&|9C.8RTWwxWy46ah嘦mh٤&l zCy!PY?: CJyв]dm4ǜҐR޻RլhX{FƯanшQI@x' ao(kUUuxW_Ñ줮[w8 FRJ(8˼)_mQ _!RJhm=!cVmm ?sFOnll6Qk}alY}; "baӌ~M0w,Ggw2W:G/k2%R,_=u`WU R.9T"v,<\Ik޽/2110Ӿxc0gyC&Ny޽JҢrV6N ``یeA16"J³+Rj*;BϜkZPJaÍ<Jyw:NP8/D$ 011z֊Ⱳ3ι֘k1V_"h!JPIΣ'ɜ* aEAd:ݺ>y<}Lp&PlRfTb1]o .2EW\ͮ]38؋rTJsǏP@芎sF\> P^+dYJLbJ C-xϐn> ι$nj,;Ǖa FU *择|h ~izť3ᤓ`K'-f tL7JK+vf2)V'-sFuB4i+m+@My=O҈0"|Yxoj,3]:cо3 $#uŘ%Y"y죯LebqtҢVzq¼X)~>4L׶m~[1_k?kxֺQ`\ |ٛY4Ѯr!)N9{56(iNq}O()Em]=F&u?$HypWUeB\k]JɩSع9 Zqg4ZĊo oMcjZBU]B\TUd34ݝ~:7ڶSUsB0Z3srx 7`:5xcx !qZA!;%͚7&P H<WL!džOb5kF)xor^aujƍ7 Ǡ8/p^(L>ὴ-B,{ۇWzֺ^k]3\EE@7>lYBȝR.oHnXO/}sB|.i@ɥDB4tcm,@ӣgdtJ!lH$_vN166L__'Z)y&kH;:,Y7=J 9cG) V\hjiE;gya~%ks_nC~Er er)muuMg2;֫R)Md) ,¶ 2-wr#F7<-BBn~_(o=KO㭇[Xv eN_SMgSҐ BS헃D%g_N:/pe -wkG*9yYSZS.9cREL !k}<4_Xs#FmҶ:7R$i,fi!~' # !6/S6y@kZkZcX)%5V4P]VGYq%H1!;e1MV<!ϐHO021Dp= HMs~~a)ަu7G^];git!Frl]H/L$=AeUvZE4P\.,xi {-~p?2b#amXAHq)MWǾI_r`S Hz&|{ +ʖ_= (YS(_g0a03M`I&'9vl?MM+m~}*xT۲(fY*V4x@29s{DaY"toGNTO+xCAO~4Ϳ;p`Ѫ:>Ҵ7K 3}+0 387x\)a"/E>qpWB=1 ¨"MP(\xp߫́A3+J] n[ʼnӼaTbZUWb={~2ooKױӰp(CS\S筐R*JغV&&"FA}J>G֐p1ٸbk7 ŘH$JoN <8s^yk_[;gy-;߉DV{c B yce% aJhDȶ 2IdйIB/^n0tNtџdcKj4϶v~- CBcgqx9= PJ) dMsjpYB] GD4RDWX +h{y`,3ꊕ$`zj*N^TP4L:Iz9~6s) Ga:?y*J~?OrMwP\](21sZUD ?ܟQ5Q%ggW6QdO+\@ ̪X'GxN @'4=ˋ+*VwN ne_|(/BDfj5(Dq<*tNt1х!MV.C0 32b#?n0pzj#!38}޴o1KovCJ`8ŗ_"]] rDUy޲@ Ȗ-;xџ'^Y`zEd?0„ DAL18IS]VGq\4o !swV7ˣι%4FѮ~}6)OgS[~Q vcYbL!wG3 7띸*E Pql8=jT\꘿I(z<[6OrR8ºC~ډ]=rNl[g|v TMTղb-o}OrP^Q]<98S¤!k)G(Vkwyqyr޽Nv`N/e p/~NAOk \I:G6]4+K;j$R:Mi #*[AȚT,ʰ,;N{HZTGMoּy) ]%dHء9Պ䠬|<45,\=[bƟ8QXeB3- &dҩ^{>/86bXmZ]]yޚN[(WAHL$YAgDKp=5GHjU&99v簪C0vygln*P)9^͞}lMuiH!̍#DoRBn9l@ xA/_v=ȺT{7Yt2N"4!YN`ae >Q<XMydEB`VU}u]嫇.%e^ánE87Mu\t`cP=AD/G)sI"@MP;)]%fH9'FNsj1pVhY&9=0pfuJ&gޤx+k:!r˭wkl03׼Ku C &ѓYt{.O.zҏ z}/tf_wEp2gvX)GN#I ݭ߽v/ .& и(ZF{e"=V!{zW`, ]+LGz"(UJp|j( #V4, 8B 0 9OkRrlɱl94)'VH9=9W|>PS['G(*I1==C<5"Pg+x'K5EMd؞Af8lG ?D FtoB[je?{k3zQ vZ;%Ɠ,]E>KZ+T/ EJxOZ1i #T<@ I}q9/t'zi(EMqw`mYkU6;[t4DPeckeM;H}_g pMww}k6#H㶏+b8雡Sxp)&C $@'b,fPߑt$RbJ'vznuS ~8='72_`{q纶|Q)Xk}cPz9p7O:'|G~8wx(a 0QCko|0ASD>Ip=4Q, d|F8RcU"/KM opKle M3#i0c%<7׿p&pZq[TR"BpqauIp$ 8~Ĩ!8Սx\ւdT>>Z40ks7 z2IQ}ItԀ<-%S⍤};zIb$I 5K}Q͙D8UguWE$Jh )cu4N tZl+[]M4k8֦Zeq֮M7uIqG 1==tLtR,ƜSrHYt&QP윯Lg' I,3@P'}'R˪e/%-Auv·ñ\> vDJzlӾNv5:|K/Jb6KI9)Zh*ZAi`?S {aiVDԲuy5W7pWeQJk֤#5&V<̺@/GH?^τZL|IJNvI:'P=Ϛt"¨=cud S Q.Ki0 !cJy;LJR;G{BJy޺[^8fK6)=yʊ+(k|&xQ2`L?Ȓ2@Mf 0C`6-%pKpm')c$׻K5[J*U[/#hH!6acB JA _|uMvDyk y)6OPYjœ50VT K}cǻP[ $:]4MEA.y)|B)cf-A?(e|lɉ#P9V)[9t.EiQPDѠ3ϴ;E:+Օ t ȥ~|_N2,ZJLt4! %ա]u {+=p.GhNcŞQI?Nd'yeh n7zi1DB)1S | S#ًZs2|Ɛy$F SxeX{7Vl.Src3E℃Q>b6G ўYCmtկ~=K0f(=LrAS GN'ɹ9<\!a`)֕y[uՍ[09` 9 +57ts6}b4{oqd+J5fa/,97J#6yν99mRWxJyѡyu_TJc`~W>l^q#Ts#2"nD1%fS)FU w{ܯ R{ ˎ󅃏џDsZSQS;LV;7 Od1&1n$ N /.q3~eNɪ]E#oM~}v֯FڦwyZ=<<>Xo稯lfMFV6p02|*=tV!c~]fa5Y^Q_WN|Vs 0ҘދU97OI'N2'8N֭fgg-}V%y]U4 峧p*91#9U kCac_AFңĪy뚇Y_AiuYyTTYЗ-(!JFLt›17uTozc. S;7A&&<ԋ5y;Ro+:' *eYJkWR[@F %SHWP 72k4 qLd'J "zB6{AC0ƁA6U.'F3:Ȅ(9ΜL;D]m8ڥ9}dU "v!;*13Rg^fJyShyy5auA?ɩGHRjo^]׽S)Fm\toy 4WQS@mE#%5ʈfFYDX ~D5Ϡ9tE9So_aU4?Ѽm%&c{n>.KW1Tlb}:j uGi(JgcYj0qn+>) %\!4{LaJso d||u//P_y7iRJ߬nHOy) l+@$($VFIQ9%EeKʈU. ia&FY̒mZ=)+qqoQn >L!qCiDB;Y<%} OgBxB!ØuG)WG9y(Ą{_yesuZmZZey'Wg#C~1Cev@0D $a@˲(.._GimA:uyw֬%;@!JkQVM_Ow:P.s\)ot- ˹"`B,e CRtaEUP<0'}r3[>?G8xU~Nqu;Wm8\RIkբ^5@k+5(By'L&'gBJ3ݶ!/㮻w҅ yqPWUg<e"Qy*167΃sJ\oz]T*UQ<\FԎ`HaNmڜ6DysCask8wP8y9``GJ9lF\G g's Nn͵MLN֪u$| /|7=]O)6s !ĴAKh]q_ap $HH'\1jB^s\|- W1:=6lJBqjY^LsPk""`]w)󭃈,(HC ?䔨Y$Sʣ{4Z+0NvQkhol6C.婧/u]FwiVjZka&%6\F*Ny#8O,22+|Db~d ~Çwc N:FuuCe&oZ(l;@ee-+Wn`44AMK➝2BRՈt7g*1gph9N) *"TF*R(#'88pm=}X]u[i7bEc|\~EMn}P瘊J)K.0i1M6=7'_\kaZ(Th{K*GJyytw"IO-PWJk)..axӝ47"89Cc7ĐBiZx 7m!fy|ϿF9CbȩV 9V-՛^pV̌ɄS#Bv4-@]Vxt-Z, &ֺ*diؠ2^VXbs֔Ìl.jQ]Y[47gj=幽ex)A0ip׳ W2[ᎇhuE^~q흙L} #-b۸oFJ_QP3r6jr+"nfzRJTUqoaۍ /$d8Mx'ݓ= OՃ| )$2mcM*cЙj}f };n YG w0Ia!1Q.oYfr]DyISaP}"dIӗթO67jqR ҊƐƈaɤGG|h;t]䗖oSv|iZqX)oalv;۩meEJ\!8=$4QU4Xo&VEĊ YS^E#d,yX_> ۘ-e\ "Wa6uLĜZi`aD9.% w~mB(02G[6y.773a7 /=o7D)$Z 66 $bY^\CuP. (x'"J60׿Y:Oi;F{w佩b+\Yi`TDWa~|VH)8q/=9!g߆2Y)?ND)%?Ǐ`k/sn:;O299yB=a[Ng 3˲N}vLNy;*?x?~L&=xyӴ~}q{qE*IQ^^ͧvü{Huu=R|>JyUlZV, B~/YF!Y\u_ݼF{_C)LD]m {H 0ihhadd nUkf3oٺCvE\)QJi+֥@tDJkB$1!Đr0XQ|q?d2) Ӣ_}qv-< FŊ߫%roppVBwü~JidY4:}L6M7f٬F "?71<2#?Jyy4뷢<_a7_=Q E=S1И/9{+93֮E{ǂw{))?maÆm(uLE#lïZ  ~d];+]h j?!|$F}*"4(v'8s<ŏUkm7^7no1w2ؗ}TrͿEk>p'8OB7d7R(A 9.*Mi^ͳ; eeUwS+C)uO@ =Sy]` }l8^ZzRXj[^iUɺ$tj))<sbDJfg=Pk_{xaKo1:-uyG0M ԃ\0Lvuy'ȱc2Ji AdyVgVh!{]/&}}ċJ#%d !+87<;qN޼Nفl|1N:8ya  8}k¾+-$4FiZYÔXk*I&'@iI99)HSh4+2G:tGhS^繿 Kتm0 вDk}֚+QT4;sC}rՅE,8CX-e~>G&'9xpW,%Fh,Ry56Y–hW-(v_,? ; qrBk4-V7HQ;ˇ^Gv1JVV%,ik;D_W!))+BoS4QsTM;gt+ndS-~:11Sgv!0qRVh!"Ȋ(̦Yl.]PQWgٳE'`%W1{ndΗBk|Ž7ʒR~,lnoa&:ü$ 3<a[CBݮwt"o\ePJ=Hz"_c^Z.#ˆ*x z̝grY]tdkP*:97YľXyBkD4N.C_[;F9`8& !AMO c `@BA& Ost\-\NX+Xp < !bj3C&QL+*&kAQ=04}cC!9~820G'PC9xa!w&bo_1 Sw"ܱ V )Yl3+ס2KoXOx]"`^WOy :3GO0g;%Yv㐫(R/r (s } u B &FeYZh0y> =2<Ϟc/ -u= c&׭,.0"g"7 6T!vl#sc>{u/Oh Bᾈ)۴74]x7 gMӒ"d]U)}" v4co[ ɡs 5Gg=XR14?5A}D "b{0$L .\4y{_fe:kVS\\O]c^W52LSBDM! C3Dhr̦RtArx4&agaN3Cf<Ԉp4~ B'"1@.b_/xQ} _߃҉/gٓ2Qkqp0շpZ2fԫYz< 4L.Cyυι1t@鎫Fe sYfsF}^ V}N<_`p)alٶ "(XEAVZ<)2},:Ir*#m_YӼ R%a||EƼIJ,,+f"96r/}0jE/)s)cjW#w'Sʯ5<66lj$a~3Kʛy 2:cZ:Yh))+a߭K::N,Q F'qB]={.]h85C9cr=}*rk?vwV렵ٸW Rs%}rNAkDv|uFLBkWY YkX מ|)1!$#3%y?pF<@<Rr0}: }\J [5FRxY<9"SQdE(Q*Qʻ)q1E0B_O24[U'],lOb ]~WjHޏTQ5Syu wq)xnw8~)c 쫬gٲߠ H% k5dƝk> kEj,0% b"vi2Wس_CuK)K{n|>t{P1򨾜j>'kEkƗBg*H%'_aY6Bn!TL&ɌOb{c`'d^{t\i^[uɐ[}q0lM˕G:‚4kb祔c^:?bpg… +37stH:0}en6x˟%/<]BL&* 5&fK9Mq)/iyqtA%kUe[ڛKN]Ě^,"`/ s[EQQm?|XJ߅92m]G.E΃ח U*Cn.j_)Tѧj̿30ڇ!A0=͜ar I3$C^-9#|pk!)?7.x9 @OO;WƝZBFU keZ75F6Tc6"ZȚs2y/1 ʵ:u4xa`C>6Rb/Yм)^=+~uRd`/|_8xbB0?Ft||Z\##|K 0>>zxv8۴吅q 8ĥ)"6>~\8:qM}#͚'ĉ#p\׶ l#bA?)|g g9|8jP(cr,BwV (WliVxxᡁ@0Okn;ɥh$_ckCgriv}>=wGzβ KkBɛ[˪ !J)h&k2%07δt}!d<9;I&0wV/ v 0<H}L&8ob%Hi|޶o&h1L|u֦y~󛱢8fٲUsւ)0oiFx2}X[zVYr_;N(w]_4B@OanC?gĦx>мgx>ΛToZoOMp>40>V Oy V9iq!4 LN,ˢu{jsz]|"R޻&'ƚ{53ўFu(<٪9:΋]B;)B>1::8;~)Yt|0(pw2N%&X,URBK)3\zz&}ax4;ǟ(tLNg{N|Ǽ\G#C9g$^\}p?556]/RP.90 k,U8/u776s ʪ_01چ|\N 0VV*3H鴃J7iI!wG_^ypl}r*jɤSR 5QN@ iZ#1ٰy;_\3\BQQ x:WJv츟ٯ$"@6 S#qe딇(/P( Dy~TOϻ<4:-+F`0||;Xl-"uw$Цi󼕝mKʩorz"mϺ$F:~E'ҐvD\y?Rr8_He@ e~O,T.(ފR*cY^m|cVR[8 JҡSm!ΆԨb)RHG{?MpqrmN>߶Y)\p,d#xۆWY*,l6]v0h15M˙MS8+EdI='LBJIH7_9{Caз*Lq,dt >+~ّeʏ?xԕ4bBAŚjﵫ!'\Ը$WNvKO}ӽmSşذqsOy?\[,d@'73'j%kOe`1.g2"e =YIzS2|zŐƄa\U,dP;jhhhaxǶ?КZ՚.q SE+XrbOu%\GتX(H,N^~]JyEZQKceTQ]VGYqnah;y$cQahT&QPZ*iZ8UQQM.qo/T\7X"u?Mttl2Xq(IoW{R^ ux*SYJ! 4S.Jy~ BROS[V|žKNɛP(L6V^|cR7i7nZW1Fd@ Ara{詑|(T*dN]Ko?s=@ |_EvF]׍kR)eBJc" MUUbY6`~V޴dJKß&~'d3i WWWWWW
Current Directory: /home/u588966950/domains/vtsinfotech.online/public_html/swanayurbed/swan_front
Viewing File: /home/u588966950/domains/vtsinfotech.online/public_html/swanayurbed/swan_front/index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>SWAN Ayurveda · Goa</title> <link rel="preconnect" href="https://fonts.googleapis.com"> <link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700;1,900&family=Libre+Baskerville:ital,wght@0,400;1,400&family=Raleway:wght@100;200;300&display=swap" rel="stylesheet"> <style> * { margin: 0; padding: 0; box-sizing: border-box; } :root { --ink: #1a2417; --parchment: #f2ede0; --amber: #789a63; --ochre: #95b37a; --rust: #516b45; --sage: #6f8f5b; --dusk: #223126; --mist: #e7e1d3; --gold: #89a972; --divine-gold: #c8a84b; --divine-light: #f0d080; } html { scroll-behavior: smooth; overflow-x: hidden; } body { background: var(--parchment); color: var(--ink); font-family: 'Libre Baskerville', Georgia, serif; overflow-x: hidden; width: 100%; } /* ── GRAIN OVERLAY ── */ body::before { content: ''; position: fixed; inset: 0; z-index: 998; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E"); opacity: 0.2; } /* ── NAV ── */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 28px 48px; background: linear-gradient(to bottom, rgba(17,30,22,0.48), rgba(17,30,22,0.1)); backdrop-filter: blur(6px); border-bottom: 1px solid rgba(241,235,221,0.12); } .nav-logo { display: inline-flex; align-items: center; text-decoration: none; } .nav-logo img { height: 52px; width: auto; display: block; object-fit: contain; opacity: 0.96; filter: drop-shadow(0 2px 8px rgba(0,0,0,0.28)); } .nav-right { display: flex; align-items: center; gap: 40px; } .nav-link { font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; color: #fff; text-decoration: none; opacity: 0.92; mix-blend-mode: difference; transition: opacity 0.3s; } .nav-link:hover { opacity: 1; } .nav-enquire { font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; color: #fff; text-decoration: none; border-bottom: 1px solid #fff; mix-blend-mode: difference; padding-bottom: 2px; } section, .band { margin: 24px 24px 0; border-radius: 18px; overflow: hidden; box-shadow: 0 1px 0 rgba(34,49,38,0.08), 0 22px 36px rgba(26,36,23,0.08); } .hero { margin: 0; border-radius: 0; box-shadow: none; } /* ── HERO ── */ .hero { height: 100vh; min-height: 750px; position: relative; overflow: hidden; display: flex; align-items: flex-end; padding: 0 0 80px 0; } .hero-video { position: absolute; inset: 0; z-index: 0; pointer-events: none; } .hero-video video, .hero-video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; } .hero-video video { filter: saturate(0.92) contrast(0.95); } .hero-video img { filter: saturate(0.92) contrast(0.95); } .hero-video::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(15,28,20,0.42), rgba(15,28,20,0.54)); } .hero-canvas { position: absolute; inset: 0; z-index: 1; opacity: 0.2; pointer-events: none; } .hero-canvas svg { width: 100%; height: 100%; position: absolute; inset: 0; } .hero-type { position: relative; z-index: 2; padding: 0 48px; width: min(920px, 100%); } .hero-kicker { display: inline-block; margin-bottom: 18px; font-family: 'Raleway', sans-serif; font-size: 11px; font-weight: 300; letter-spacing: 0.32em; text-transform: uppercase; color: rgba(241,235,221,0.88); } .hero-giant { font-family: 'Playfair Display', serif; font-size: clamp(70px, 11vw, 160px); font-weight: 900; font-style: italic; line-height: 0.9; color: var(--parchment); letter-spacing: -0.015em; text-shadow: 0 12px 40px rgba(0,0,0,0.35); animation: heroReveal 1.6s cubic-bezier(0.16, 1, 0.3, 1) both; } .hero-giant span { display: block; } .hero-giant .line-2 { color: var(--ochre); padding-left: 5vw; } .hero-giant .line-3 { color: rgba(241,235,221,0.9); font-size: clamp(58px, 8.5vw, 120px); padding-left: 1vw; } .hero-sub { margin-top: 20px; max-width: 540px; font-size: clamp(16px, 1.7vw, 22px); line-height: 1.65; color: rgba(241,235,221,0.88); text-wrap: balance; } .hero-meta { position: absolute; right: 48px; bottom: 72px; z-index: 3; text-align: left; min-width: 320px; padding: 20px 22px; border-radius: 14px; background: rgba(15,28,20,0.5); border: 1px solid rgba(241,235,221,0.24); box-shadow: 0 10px 24px rgba(0,0,0,0.2); backdrop-filter: blur(6px); animation: fadeSlide 1.4s 0.6s ease both; } .hero-meta p { font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase; color: rgba(241,235,221,0.96); line-height: 1.9; text-shadow: 0 2px 10px rgba(0,0,0,0.3); } .hero-meta p + p { margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(241,235,221,0.15); } .hero-scroll-hint { position: absolute; left: 50%; bottom: 28px; z-index: 2; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; font-family: 'Raleway', sans-serif; font-size: 9px; letter-spacing: 0.35em; text-transform: uppercase; color: rgba(248,243,234,0.82); opacity: 0.6; animation: breathe 3s ease-in-out infinite; } .hero-scroll-hint::after { content: ''; display: block; width: 1px; height: 56px; background: linear-gradient(to bottom, var(--amber), transparent); } /* ── OPENING VERSE ── */ .verse { padding: 120px 48px; position: relative; overflow: hidden; } .verse-bg-text { position: absolute; top: 40px; right: -20px; font-family: 'Playfair Display', serif; font-size: clamp(100px, 18vw, 260px); font-weight: 900; font-style: italic; color: #efe6d8; line-height: 1; pointer-events: none; z-index: 0; user-select: none; white-space: nowrap; opacity: 0.55; } .verse-content { position: relative; z-index: 1; max-width: 680px; } .verse-mark { font-family: 'Playfair Display', serif; font-size: 100px; line-height: 0.5; color: var(--ochre); opacity: 0.5; display: block; margin-bottom: 16px; } .verse-text { font-family: 'Playfair Display', serif; font-size: clamp(24px, 3.5vw, 42px); font-style: italic; font-weight: 400; line-height: 1.5; color: var(--dusk); } .verse-attr { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 11px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--amber); margin-top: 36px; display: block; } .verse-aside { position: absolute; right: 48px; top: 50%; transform: translateY(-50%) rotate(90deg); transform-origin: right center; font-family: 'Raleway', sans-serif; font-weight: 100; font-size: 10px; letter-spacing: 0.5em; text-transform: uppercase; color: var(--amber); opacity: 0.6; white-space: nowrap; } /* ── PHILOSOPHY ── */ .philosophy { position: relative; background: var(--dusk); min-height: 100vh; display: grid; grid-template-columns: 1fr 1fr; } .phil-art { position: relative; overflow: hidden; min-height: 600px; } .phil-art-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(0.9) brightness(0.7); } .phil-art svg { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; opacity: 0.45; } .phil-art svg rect:first-of-type { opacity: 0.2; } .phil-art-label { position: absolute; bottom: 40px; left: 40px; right: 40px; z-index: 2; font-family: 'Raleway', sans-serif; font-size: 10px; letter-spacing: 0.35em; text-transform: uppercase; color: rgba(241,235,221,0.4); border-top: 1px solid rgba(241,235,221,0.1); padding-top: 16px; } .phil-body { padding: 80px 64px; display: flex; flex-direction: column; justify-content: center; } .phil-num { font-family: 'Playfair Display', serif; font-size: 120px; font-weight: 900; font-style: italic; color: rgba(127,159,105,0.12); line-height: 1; margin-bottom: -20px; display: block; } .phil-heading { font-family: 'Playfair Display', serif; font-size: clamp(36px, 4vw, 58px); font-weight: 700; font-style: italic; color: var(--parchment); line-height: 1.15; margin-bottom: 32px; } .phil-text { font-size: 15px; line-height: 2; color: rgba(241,235,221,0.55); font-weight: 400; max-width: 420px; } .phil-text em { color: var(--ochre); font-style: normal; } .phil-divider { width: 40px; height: 1px; background: var(--amber); margin: 36px 0; } /* ── DRIFTING BAND ── */ .band { overflow: hidden; background: #e2dccd; padding: 18px 0; position: relative; } .band-track { display: flex; white-space: nowrap; animation: drift 42s linear infinite; } .band-item { font-family: 'Playfair Display', serif; font-size: 17px; font-style: italic; color: rgba(34,49,38,0.82); padding: 0 44px; display: inline-flex; align-items: center; gap: 48px; } .band-item::after { content: '•'; font-size: 10px; color: rgba(34,49,38,0.45); opacity: 0.9; } /* ════════════════════════════════════════ ── TRIDOSHA ANIMATED SECTION (NEW) ── ════════════════════════════════════════ */ .tridosha-section { background: linear-gradient(160deg, #0d1f15 0%, #162a1e 50%, #0a1a10 100%); padding: 120px 48px; position: relative; overflow: hidden; } .tridosha-section::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 50%, rgba(120,154,99,0.08) 0%, transparent 70%); pointer-events: none; } .tridosha-header { text-align: center; margin-bottom: 80px; position: relative; z-index: 2; } .tridosha-header h2 { font-family: 'Playfair Display', serif; font-size: clamp(40px, 5.5vw, 72px); font-weight: 900; font-style: italic; color: var(--parchment); line-height: 1.05; margin-bottom: 16px; } .tridosha-header h2 span { color: var(--amber); } .tridosha-header p { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; color: rgba(241,235,221,0.4); } .tridosha-arena { display: grid; grid-template-columns: 1fr 420px 1fr; gap: 40px; align-items: center; position: relative; z-index: 2; max-width: 1100px; margin: 0 auto; } /* dosha card */ .dosha-card { padding: 40px 32px; border-radius: 16px; background: rgba(241,235,221,0.03); border: 1px solid rgba(241,235,221,0.06); transition: background 0.5s, border-color 0.5s, transform 0.5s; cursor: default; position: relative; overflow: hidden; } .dosha-card::before { content: ''; position: absolute; inset: 0; border-radius: 16px; opacity: 0; transition: opacity 0.5s; } .dosha-card.vata::before { background: radial-gradient(ellipse at 50% 0%, rgba(135,180,255,0.12) 0%, transparent 70%); } .dosha-card.pitta::before { background: radial-gradient(ellipse at 50% 0%, rgba(255,140,80,0.12) 0%, transparent 70%); } .dosha-card.kapha::before { background: radial-gradient(ellipse at 50% 0%, rgba(120,200,140,0.12) 0%, transparent 70%); } .dosha-card:hover { transform: translateY(-6px); border-color: rgba(241,235,221,0.14); } .dosha-card:hover::before { opacity: 1; } .dosha-card.vata:hover { background: rgba(135,180,255,0.05); } .dosha-card.pitta:hover { background: rgba(255,140,80,0.05); } .dosha-card.kapha:hover { background: rgba(120,200,140,0.05); } .dosha-symbol { font-size: 48px; margin-bottom: 20px; display: block; animation: floatSymbol 4s ease-in-out infinite; } .dosha-card.pitta .dosha-symbol { animation-delay: 1.3s; } .dosha-card.kapha .dosha-symbol { animation-delay: 2.6s; } .dosha-name { font-family: 'Playfair Display', serif; font-size: 32px; font-weight: 700; font-style: italic; margin-bottom: 6px; line-height: 1; } .dosha-card.vata .dosha-name { color: #a8c8ff; } .dosha-card.pitta .dosha-name { color: #ffb080; } .dosha-card.kapha .dosha-name { color: #80d4a0; } .dosha-sanskrit { font-family: 'Raleway', sans-serif; font-size: 10px; letter-spacing: 0.3em; text-transform: uppercase; color: rgba(241,235,221,0.3); margin-bottom: 24px; display: block; } .dosha-elements { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px; } .dosha-elem { font-family: 'Raleway', sans-serif; font-size: 9px; letter-spacing: 0.2em; text-transform: uppercase; padding: 4px 10px; border-radius: 20px; border: 1px solid; opacity: 0.65; } .dosha-card.vata .dosha-elem { color: #a8c8ff; border-color: rgba(168,200,255,0.3); } .dosha-card.pitta .dosha-elem { color: #ffb080; border-color: rgba(255,176,128,0.3); } .dosha-card.kapha .dosha-elem { color: #80d4a0; border-color: rgba(128,212,160,0.3); } .dosha-desc { font-size: 13px; line-height: 1.9; color: rgba(241,235,221,0.42); } .dosha-qualities { margin-top: 20px; padding-top: 20px; border-top: 1px solid rgba(241,235,221,0.06); font-family: 'Raleway', sans-serif; font-size: 11px; letter-spacing: 0.05em; color: rgba(241,235,221,0.25); line-height: 1.8; } /* central SVG canvas */ .tridosha-canvas-wrap { position: relative; display: flex; align-items: center; justify-content: center; } #tridosha-svg { width: 420px; height: 420px; overflow: visible; } /* ── dosha triangle animations ── */ .tri-outer { animation: triPulse 4s ease-in-out infinite; transform-origin: center; } .tri-mid { animation: triPulse 4s 0.6s ease-in-out infinite; transform-origin: center; } .tri-inner { animation: triPulse 4s 1.2s ease-in-out infinite; transform-origin: center; } .tri-rotate-group { animation: triRotate 30s linear infinite; transform-origin: 210px 210px; } .tri-orbit { animation: triOrbit 8s ease-in-out infinite; transform-origin: center; } .center-lotus { animation: lotusGlow 3s ease-in-out infinite alternate; transform-origin: 210px 210px; } .center-circle { animation: centerPulse 2.5s ease-in-out infinite; transform-origin: 210px 210px; } .vata-orb { animation: orbVata 6s ease-in-out infinite; } .pitta-orb { animation: orbPitta 6s 2s ease-in-out infinite; } .kapha-orb { animation: orbKapha 6s 4s ease-in-out infinite; } .energy-ring-1 { animation: energyRing 3s linear infinite; transform-origin: 210px 210px; } .energy-ring-2 { animation: energyRing 5s 1s linear infinite reverse; transform-origin: 210px 210px; } .particles { animation: particleFloat 8s ease-in-out infinite; } /* ════════════════════════════════════════ ── DHANWANTRI SECTION (NEW) ── ════════════════════════════════════════ */ .dhanwantri { background: linear-gradient(175deg, #0a1a10 0%, #111f16 40%, #1a2e1e 100%); position: relative; overflow: hidden; padding: 0; display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; } /* left — art / portrait */ .dhw-art { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; background: radial-gradient(ellipse at 40% 50%, rgba(200,168,75,0.1) 0%, transparent 60%); } /* animated mandala behind figure */ .dhw-mandala { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; pointer-events: none; } #dhw-mandala-svg { width: 90%; height: 90%; max-width: 580px; animation: mandalaRotate 60s linear infinite; opacity: 0.25; } .mandala-ring-1 { animation: mandalaRingPulse 4s ease-in-out infinite; transform-origin: 290px 290px; } .mandala-ring-2 { animation: mandalaRingPulse 4s 1.3s ease-in-out infinite; transform-origin: 290px 290px; } .mandala-ring-3 { animation: mandalaRingPulse 4s 2.6s ease-in-out infinite; transform-origin: 290px 290px; } /* divine light rays behind figure */ .dhw-rays { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; pointer-events: none; } #dhw-rays-svg { width: 80%; height: 80%; animation: raysRotate 20s linear infinite; opacity: 0.12; } /* the figure itself */ .dhw-figure { position: relative; z-index: 2; width: min(380px, 80%); height: auto; display: block; filter: drop-shadow(0 0 60px rgba(200,168,75,0.35)) drop-shadow(0 0 120px rgba(200,168,75,0.15)); animation: dhwFloat 5s ease-in-out infinite; } .dhw-halo { position: absolute; width: 340px; height: 340px; top: 50%; left: 50%; transform: translate(-50%, -52%); border-radius: 50%; background: radial-gradient(ellipse, rgba(200,168,75,0.18) 0%, rgba(200,168,75,0.06) 40%, transparent 70%); animation: haloGlow 3s ease-in-out infinite alternate; pointer-events: none; z-index: 1; } .dhw-particles-wrap { position: absolute; inset: 0; pointer-events: none; z-index: 3; } /* right — text body */ .dhw-body { padding: 80px 64px; display: flex; flex-direction: column; justify-content: center; position: relative; } .dhw-kicker { font-family: 'Raleway', sans-serif; font-size: 10px; letter-spacing: 0.45em; text-transform: uppercase; color: var(--divine-gold); margin-bottom: 16px; display: flex; align-items: center; gap: 16px; } .dhw-kicker::before { content: ''; display: block; width: 32px; height: 1px; background: var(--divine-gold); opacity: 0.5; } .dhw-heading { font-family: 'Playfair Display', serif; font-size: clamp(42px, 4.5vw, 68px); font-weight: 900; font-style: italic; color: var(--parchment); line-height: 1.05; margin-bottom: 8px; } .dhw-heading span { color: var(--divine-gold); } .dhw-sanskrit-title { font-family: 'Playfair Display', serif; font-size: 28px; color: rgba(200,168,75,0.45); margin-bottom: 40px; letter-spacing: 0.05em; } .dhw-divider { width: 48px; height: 1px; background: var(--divine-gold); opacity: 0.4; margin-bottom: 36px; } .dhw-intro { font-size: 15px; line-height: 2; color: rgba(241,235,221,0.55); max-width: 440px; margin-bottom: 40px; } .dhw-intro em { color: var(--divine-gold); font-style: normal; } /* four hands / attributes grid */ .dhw-attributes { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 48px; } .dhw-attr { padding: 20px; border-radius: 12px; background: rgba(200,168,75,0.04); border: 1px solid rgba(200,168,75,0.1); transition: background 0.4s, border-color 0.4s; } .dhw-attr:hover { background: rgba(200,168,75,0.08); border-color: rgba(200,168,75,0.2); } .dhw-attr-icon { font-size: 22px; margin-bottom: 8px; display: block; } .dhw-attr-name { font-family: 'Raleway', sans-serif; font-size: 9px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--divine-gold); margin-bottom: 6px; display: block; opacity: 0.8; } .dhw-attr-text { font-size: 12px; line-height: 1.7; color: rgba(241,235,221,0.38); } /* mantra strip */ .dhw-mantra { padding: 24px 28px; border-radius: 12px; background: rgba(200,168,75,0.06); border: 1px solid rgba(200,168,75,0.15); text-align: center; } .dhw-mantra-text { font-family: 'Playfair Display', serif; font-size: 18px; font-style: italic; color: rgba(200,168,75,0.85); margin-bottom: 8px; line-height: 1.6; letter-spacing: 0.03em; } .dhw-mantra-trans { font-family: 'Raleway', sans-serif; font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; color: rgba(241,235,221,0.28); } /* decorative border left edge */ .dhw-body::before { content: ''; position: absolute; left: 0; top: 10%; height: 80%; width: 1px; background: linear-gradient(to bottom, transparent, rgba(200,168,75,0.2), transparent); } /* ── TREATMENTS ── */ .treatments { background: var(--parchment); padding: 120px 0; } .treatments-label { padding: 0 48px; margin-bottom: 72px; display: flex; align-items: baseline; gap: 24px; } .treatments-label h2 { font-family: 'Playfair Display', serif; font-size: clamp(48px, 7vw, 90px); font-weight: 900; font-style: italic; color: var(--dusk); line-height: 1; } .treatments-label h2 em { color: transparent; -webkit-text-stroke: 1.5px var(--amber); } .treatments-label .sub { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 11px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--amber); writing-mode: vertical-rl; align-self: flex-end; padding-bottom: 8px; } .treatment-flow { display: flex; flex-direction: column; gap: 2px; } .t-row { display: grid; grid-template-columns: 80px 1fr 1fr; align-items: stretch; border-top: 1px solid rgba(26,36,23,0.1); min-height: 160px; transition: background 0.5s; } .t-row:last-child { border-bottom: 1px solid rgba(26,36,23,0.1); } .t-row:hover { background: #f2e8d9; } .t-row:hover .t-num { color: var(--amber); } .t-row:hover .t-name { color: var(--dusk); } .t-row:hover .t-desc { color: rgba(26,36,23,0.62); } .t-num { font-family: 'Playfair Display', serif; font-size: 11px; letter-spacing: 0.1em; color: rgba(26,36,23,0.25); padding: 40px 24px 40px 48px; display: flex; align-items: flex-start; padding-top: 44px; transition: color 0.5s; } .t-name-block { padding: 40px 40px 40px 0; border-right: 1px solid rgba(26,36,23,0.08); display: flex; flex-direction: column; justify-content: space-between; transition: border-color 0.5s; } .t-row:hover .t-name-block { border-color: rgba(26,36,23,0.12); } .t-name { font-family: 'Playfair Display', serif; font-size: clamp(24px, 2.5vw, 34px); font-weight: 700; font-style: italic; color: var(--dusk); line-height: 1.1; transition: color 0.5s; } .t-sanskrit { font-family: 'Raleway', sans-serif; font-size: 11px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--amber); opacity: 0.6; margin-top: 8px; } .t-desc { padding: 40px 48px; font-size: 14px; line-height: 1.9; color: rgba(26,36,23,0.5); font-weight: 400; transition: color 0.5s; display: flex; align-items: center; } /* ── PACKAGES ── */ .packages { background: linear-gradient(180deg, #21170f 0%, #2a1d13 100%); padding: 120px 48px; position: relative; overflow: hidden; } .packages::before { content: 'HEAL'; position: absolute; top: -20px; right: -30px; font-family: 'Playfair Display', serif; font-size: 28vw; font-weight: 900; font-style: italic; color: rgba(127,159,105,0.025); pointer-events: none; line-height: 1; user-select: none; } .packages-header { margin-bottom: 80px; } .packages-header h2 { font-family: 'Playfair Display', serif; font-size: clamp(40px, 6vw, 80px); font-weight: 900; font-style: italic; color: var(--parchment); line-height: 1.05; } .packages-header h2 span { color: var(--amber); } .pkg-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(241,235,221,0.06); } .pkg { background: rgba(241,235,221,0.03); padding: 56px 40px; position: relative; overflow: hidden; border-radius: 2px; transition: background 0.5s, transform 0.5s; } .pkg:hover { background: rgba(127,159,105,0.1); transform: translateY(-4px); } .pkg-week { font-family: 'Playfair Display', serif; font-size: 72px; font-weight: 900; font-style: italic; color: rgba(127,159,105,0.15); line-height: 1; position: absolute; top: 20px; right: 20px; } .pkg-duration { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 10px; letter-spacing: 0.4em; text-transform: uppercase; color: var(--amber); margin-bottom: 24px; display: block; } .pkg-name { font-family: 'Playfair Display', serif; font-size: 26px; font-weight: 700; font-style: italic; color: var(--parchment); margin-bottom: 20px; line-height: 1.2; } .pkg-line { width: 32px; height: 1px; background: var(--amber); opacity: 0.4; margin-bottom: 24px; } .pkg-desc { font-size: 13px; line-height: 1.9; color: rgba(241,235,221,0.4); margin-bottom: 40px; } .pkg-list { list-style: none; margin-bottom: 48px; } .pkg-list li { font-family: 'Raleway', sans-serif; font-size: 12px; font-weight: 300; letter-spacing: 0.05em; color: rgba(241,235,221,0.5); padding: 10px 0; border-bottom: 1px solid rgba(241,235,221,0.06); display: flex; align-items: center; gap: 12px; } .pkg-list li::before { content: '—'; color: var(--amber); opacity: 0.5; font-size: 10px; } .pkg-cta { display: inline-block; font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 11px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--amber); text-decoration: none; border-bottom: 1px solid rgba(127,159,105,0.4); padding-bottom: 3px; transition: border-color 0.3s, color 0.3s; } .pkg-cta:hover { border-color: var(--amber); color: var(--ochre); } /* ── RITUAL ── */ .ritual { background: var(--mist); padding: 120px 48px; position: relative; } .ritual-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; margin-bottom: 100px; align-items: end; } .ritual-intro h2 { font-family: 'Playfair Display', serif; font-size: clamp(44px, 6vw, 76px); font-weight: 900; font-style: italic; color: var(--dusk); line-height: 1.05; } .ritual-intro p { font-size: 15px; line-height: 2; color: rgba(26,36,23,0.55); } .ritual-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 48px; } .rstep { position: relative; } .rstep-num { font-family: 'Playfair Display', serif; font-size: 80px; font-weight: 900; font-style: italic; color: rgba(127,159,105,0.12); line-height: 1; display: block; margin-bottom: -16px; } .rstep-line { width: 28px; height: 1px; background: var(--amber); margin: 20px 0 20px; } .rstep-name { font-family: 'Raleway', sans-serif; font-size: 10px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--amber); margin-bottom: 12px; display: block; } .rstep-text { font-size: 13px; line-height: 1.9; color: rgba(26,36,23,0.5); } /* ── TESTIMONIAL ── */ .testi { background: var(--dusk); padding: 160px 48px; position: relative; overflow: hidden; text-align: center; } .testi::before { content: '"'; position: absolute; top: -80px; left: 50%; transform: translateX(-50%); font-family: 'Playfair Display', serif; font-size: 300px; font-style: italic; font-weight: 900; color: rgba(127,159,105,0.035); pointer-events: none; line-height: 1; } .testi-text { font-family: 'Playfair Display', serif; font-size: clamp(22px, 3vw, 40px); font-style: italic; font-weight: 400; color: var(--parchment); line-height: 1.6; max-width: 800px; margin: 0 auto 48px; position: relative; z-index: 1; transition: opacity 0.6s; } .testi-author { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 11px; letter-spacing: 0.35em; text-transform: uppercase; color: var(--amber); position: relative; z-index: 1; } .testi-nav { display: flex; justify-content: center; gap: 20px; margin-top: 64px; position: relative; z-index: 1; } .testi-nav button { width: 28px; height: 1px; background: rgba(241,235,221,0.2); border: none; cursor: pointer; transition: background 0.3s, width 0.3s; padding: 0; } .testi-nav button.active { background: var(--amber); width: 56px; } /* ── LOCATION ── */ .location { background: var(--parchment); display: grid; grid-template-columns: 1fr 1fr; min-height: 80vh; } .location-poem { padding: 100px 64px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(26,36,23,0.08); } .location-poem h2 { font-family: 'Playfair Display', serif; font-size: clamp(44px, 5vw, 70px); font-weight: 900; font-style: italic; color: var(--dusk); line-height: 1.1; margin-bottom: 40px; } .location-poem h2 span { color: var(--amber); } .location-poem p { font-size: 15px; line-height: 2.1; color: rgba(26,36,23,0.55); max-width: 400px; margin-bottom: 48px; } .contact-block { display: flex; flex-direction: column; gap: 20px; } .contact-item { display: flex; flex-direction: column; gap: 4px; } .contact-label { font-family: 'Raleway', sans-serif; font-size: 9px; letter-spacing: 0.4em; text-transform: uppercase; color: var(--amber); opacity: 0.7; } .contact-val { font-size: 15px; color: var(--dusk); } .location-visual { background: var(--dusk); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; } .location-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(0.9) brightness(0.72); } .location-visual svg { width: 100%; height: 100%; position: absolute; inset: 0; z-index: 1; opacity: 0.42; } .location-visual svg rect:first-of-type { opacity: 0.18; } .location-cta-block { position: relative; z-index: 2; text-align: center; padding: 48px; } .location-cta-block p { font-family: 'Playfair Display', serif; font-size: 26px; font-style: italic; color: var(--parchment); margin-bottom: 40px; line-height: 1.5; } .btn-art { display: inline-block; font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 11px; letter-spacing: 0.3em; text-transform: uppercase; text-decoration: none; color: var(--dusk); background: var(--amber); padding: 18px 48px; transition: background 0.4s, color 0.4s; } .btn-art:hover { background: var(--ochre); } /* ── CLOSING ── */ .closing { background: linear-gradient(to bottom, rgba(15,28,20,0.58), rgba(15,28,20,0.5)), url('assets/alan-caishan-cU53ZFBr3lk-unsplash.jpg') center/cover no-repeat; padding: 100px 48px; display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; overflow: hidden; } .closing::before { content: 'OM'; position: absolute; font-family: 'Playfair Display', serif; font-size: 50vw; font-weight: 900; font-style: italic; color: rgba(241,235,221,0.1); pointer-events: none; top: 50%; left: 50%; transform: translate(-50%, -50%); } .closing h2 { font-family: 'Playfair Display', serif; font-size: clamp(40px, 7vw, 100px); font-weight: 900; font-style: italic; color: var(--parchment); line-height: 1; margin-bottom: 24px; position: relative; } .closing p { font-size: 15px; color: rgba(241,235,221,0.9); max-width: 460px; line-height: 1.9; margin-bottom: 56px; position: relative; } .btn-close { display: inline-block; font-family: 'Raleway', sans-serif; font-weight: 300; font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; text-decoration: none; color: #fff; background: var(--dusk); padding: 20px 56px; position: relative; transition: background 0.4s, transform 0.4s; } .btn-close:hover { background: var(--rust); transform: translateY(-2px); } .closing-sanskrit { margin-top: 64px; position: relative; font-family: 'Playfair Display', serif; font-size: 28px; color: rgba(241,235,221,0.58); } /* ── FOOTER ── */ footer { background: var(--ink); padding: 48px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; } .footer-mark { font-family: 'Playfair Display', serif; font-size: 20px; font-style: italic; color: var(--amber); } .footer-links { display: flex; gap: 32px; } .footer-links a { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 10px; letter-spacing: 0.3em; text-transform: uppercase; color: rgba(241,235,221,0.3); text-decoration: none; transition: color 0.3s; } .footer-links a:hover { color: var(--amber); } .footer-copy { font-family: 'Raleway', sans-serif; font-weight: 200; font-size: 10px; letter-spacing: 0.15em; color: rgba(241,235,221,0.2); } /* ── SCROLL REVEAL ── */ .sr { opacity: 0; transform: translateY(50px); transition: opacity 1s cubic-bezier(0.16,1,0.3,1), transform 1s cubic-bezier(0.16,1,0.3,1); } .sr.in { opacity: 1; transform: none; } .sr-d1 { transition-delay: 0.15s; } .sr-d2 { transition-delay: 0.3s; } .sr-d3 { transition-delay: 0.45s; } .sr-d4 { transition-delay: 0.6s; } /* ── KEYFRAMES ── */ @keyframes heroReveal { from { opacity: 0; transform: translateY(60px) skewY(2deg); } to { opacity: 1; transform: none; } } @keyframes fadeSlide { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: none; } } @keyframes breathe { 0%, 100% { opacity: 0.3; transform: translateX(-50%) translateY(0); } 50% { opacity: 0.7; transform: translateX(-50%) translateY(-6px); } } @keyframes drift { from { transform: translateX(0); } to { transform: translateX(-50%); } } @keyframes float { 0%, 100% { transform: translateY(0) rotate(0deg); } 33% { transform: translateY(-12px) rotate(1deg); } 66% { transform: translateY(6px) rotate(-0.5deg); } } /* NEW keyframes for tridosha */ @keyframes triPulse { 0%, 100% { opacity: 0.3; } 50% { opacity: 0.65; } } @keyframes triRotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes triOrbit { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.04); } } @keyframes centerPulse { 0%, 100% { transform: scale(1); opacity: 0.7; } 50% { transform: scale(1.15); opacity: 1; } } @keyframes lotusGlow { from { opacity: 0.5; } to { opacity: 1; filter: drop-shadow(0 0 12px rgba(127,159,105,0.8)); } } @keyframes orbVata { 0%, 100% { transform: translateY(0px); opacity: 0.9; } 50% { transform: translateY(-8px); opacity: 1; } } @keyframes orbPitta { 0%, 100% { transform: translateY(0px); opacity: 0.9; } 50% { transform: translateY(-8px); opacity: 1; } } @keyframes orbKapha { 0%, 100% { transform: translateY(0px); opacity: 0.9; } 50% { transform: translateY(-8px); opacity: 1; } } @keyframes energyRing { from { transform: rotate(0deg) scale(1); opacity: 0.15; } 50% { opacity: 0.35; } to { transform: rotate(360deg) scale(1); opacity: 0.15; } } @keyframes floatSymbol { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } } /* NEW keyframes for Dhanwantri */ @keyframes mandalaRotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes mandalaRingPulse { 0%, 100% { opacity: 0.4; } 50% { opacity: 0.9; } } @keyframes raysRotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes dhwFloat { 0%, 100% { transform: translateY(0px); filter: drop-shadow(0 0 60px rgba(200,168,75,0.35)); } 50% { transform: translateY(-14px); filter: drop-shadow(0 0 80px rgba(200,168,75,0.5)); } } @keyframes haloGlow { from { opacity: 0.6; transform: translate(-50%, -52%) scale(1); } to { opacity: 1; transform: translate(-50%, -52%) scale(1.1); } } @keyframes particleWander { 0% { transform: translate(0, 0) scale(1); opacity: 0.8; } 33% { transform: translate(var(--px), var(--py)) scale(0.6); opacity: 0.4; } 66% { transform: translate(calc(var(--px)*-0.5), calc(var(--py)*1.5)) scale(0.9); opacity: 0.6; } 100% { transform: translate(0, 0) scale(1); opacity: 0.8; } } /* ── RESPONSIVE ── */ @media (max-width: 900px) { section, .band { margin: 16px 12px 0; border-radius: 14px; } .hero { margin: 0; border-radius: 0; } nav { padding: 20px 24px; } .nav-logo img { height: 40px; } .nav-right .nav-link { display: none; } .hero-type { padding: 0 24px; } .hero-meta { display: none; } .verse { padding: 72px 24px; } .verse-aside { display: none; } .philosophy { grid-template-columns: 1fr; } .phil-art { min-height: 400px; } .phil-body { padding: 56px 24px; } .tridosha-section { padding: 72px 24px; } .tridosha-arena { grid-template-columns: 1fr; gap: 32px; } #tridosha-svg { width: 320px; height: 320px; } .tridosha-canvas-wrap { order: -1; } .dhanwantri { grid-template-columns: 1fr; } .dhw-art { min-height: 480px; } .dhw-body { padding: 56px 24px; } .dhw-body::before { display: none; } .treatments-label { padding: 0 24px; } .t-row { grid-template-columns: 48px 1fr; } .t-desc { display: none; } .t-num { padding: 28px 12px 28px 24px; } .t-name-block { border-right: none; padding: 28px 24px; } .packages { padding: 72px 24px; } .pkg-grid { grid-template-columns: 1fr; } .ritual { padding: 72px 24px; } .ritual-intro { grid-template-columns: 1fr; gap: 32px; margin-bottom: 56px; } .ritual-steps { grid-template-columns: 1fr 1fr; gap: 32px; } .testi { padding: 100px 24px; } .location { grid-template-columns: 1fr; } .location-visual { min-height: 400px; } .location-poem { padding: 64px 24px; } .closing { padding: 72px 24px; } footer { padding: 36px 24px; flex-direction: column; align-items: flex-start; } .dhw-attributes { grid-template-columns: 1fr; } } </style> </head> <body> <!-- NAV --> <nav> <a href="#" class="nav-logo" aria-label="Swan Ayurveda home"> <img src="assets/logo.webp" alt="Swan Ayurveda"> </a> <div class="nav-right"> <a href="#treatments" class="nav-link">Treatments</a> <a href="#packages" class="nav-link">Journeys</a> <a href="#about" class="nav-link">About</a> <a href="#contact" class="nav-enquire">Enquire</a> </div> </nav> <!-- HERO --> <section class="hero"> <div class="hero-video" aria-hidden="true"> <video autoplay muted loop playsinline preload="auto" aria-hidden="true"> <source src="assets/Project%201%20Swan%20Ayurveda%20web2.MP4" type="video/mp4"> </video> </div> <div class="hero-canvas"> <svg viewBox="0 0 1440 900" preserveAspectRatio="xMidYMid slice" xmlns="http://www.w3.org/2000/svg"> <defs> <radialGradient id="hg1" cx="30%" cy="60%" r="70%"><stop offset="0%" stop-color="#e8d4a0" stop-opacity="0.6"/><stop offset="100%" stop-color="#f5ede0" stop-opacity="0"/></radialGradient> <radialGradient id="hg2" cx="80%" cy="30%" r="60%"><stop offset="0%" stop-color="#c8843a" stop-opacity="0.15"/><stop offset="100%" stop-color="#f5ede0" stop-opacity="0"/></radialGradient> </defs> <rect width="1440" height="900" fill="#f5ede0"/> <rect width="1440" height="900" fill="url(#hg1)"/> <rect width="1440" height="900" fill="url(#hg2)"/> <g opacity="0.12" stroke="#1a2417" stroke-width="0.7" fill="none"> <path d="M1200 900 Q1180 700 1220 500 Q1260 300 1200 100"/> <path d="M1220 500 Q1280 440 1340 420"/> <path d="M1200 600 Q1140 560 1080 580"/> <path d="M100 900 Q120 700 80 500 Q40 300 110 80"/> </g> </svg> </div> <div class="hero-type"> <span class="hero-kicker">Ayurvedic Sanctuary · Goa</span> <h1 class="hero-giant"> <span class="line-1">Rituals of</span> <span class="line-2">Ayurvedic</span> <span class="line-3">Restoration.</span> </h1> <p class="hero-sub">Clinical precision, ancient wisdom, and nature-led therapies designed to rebalance body, mind, and daily rhythm.</p> </div> <div class="hero-meta"> <p>Doctor-Led Panchakarma</p> <p>Personalized Daily Protocols</p> <p>Assagao, Goa · Since 2002</p> </div> <div class="hero-scroll-hint">Scroll</div> </section> <!-- VERSE --> <section class="verse"> <div class="verse-bg-text">सत्</div> <div class="verse-content"> <span class="verse-mark sr">"</span> <p class="verse-text sr sr-d1"> Ayurveda is not merely<br> the curing of ailments —<br> it is the <em style="color:var(--amber)">art of living</em>,<br> written in the body. </p> <span class="verse-attr sr sr-d2">SWAN Ayurveda · Assagao, Goa</span> </div> <div class="verse-aside">Goa · India · 5000 Years of Wisdom</div> </section> <!-- PHILOSOPHY --> <section class="philosophy"> <div class="phil-art"> <img class="phil-art-media" src="assets/katherine-hanlon-mod2s3-qFOc-unsplash.jpg" alt="Herbal wellness visual" loading="lazy"> <svg viewBox="0 0 600 700" preserveAspectRatio="xMidYMid slice" xmlns="http://www.w3.org/2000/svg"> <defs> <radialGradient id="pg1" cx="50%" cy="40%" r="70%"><stop offset="0%" stop-color="#5c7a52" stop-opacity="0.4"/><stop offset="100%" stop-color="#1a2417" stop-opacity="0"/></radialGradient> </defs> <rect width="600" height="700" fill="#223126"/> <rect width="600" height="700" fill="url(#pg1)"/> <g transform="translate(300, 350)" opacity="0.6"> <polygon points="0,-160 138,80 -138,80" fill="none" stroke="rgba(127,159,105,0.3)" stroke-width="1"/> <polygon points="0,-120 104,60 -104,60" fill="none" stroke="rgba(127,159,105,0.15)" stroke-width="0.7"/> <text x="0" y="-170" text-anchor="middle" font-family="Raleway,sans-serif" font-size="9" fill="rgba(127,159,105,0.5)" letter-spacing="3">VATA</text> <text x="155" y="90" text-anchor="start" font-family="Raleway,sans-serif" font-size="9" fill="rgba(127,159,105,0.5)" letter-spacing="3">PITTA</text> <text x="-155" y="90" text-anchor="end" font-family="Raleway,sans-serif" font-size="9" fill="rgba(127,159,105,0.5)" letter-spacing="3">KAPHA</text> <circle r="30" fill="rgba(127,159,105,0.1)" stroke="rgba(127,159,105,0.3)" stroke-width="1"/> <circle r="4" fill="rgba(127,159,105,0.7)"/> </g> <text x="300" y="640" text-anchor="middle" font-family="serif" font-size="52" fill="rgba(241,235,221,0.05)">आयुर्वेद</text> </svg> <div class="phil-art-label">The Three Doshas · Tridosha</div> </div> <div class="phil-body"> <span class="phil-num sr">01</span> <h2 class="phil-heading sr sr-d1">The Science<br>of Life.</h2> <div class="phil-divider sr sr-d2"></div> <p class="phil-text sr sr-d2"> Ayurveda — from <em>Āyus</em> (life) and <em>Veda</em> (knowledge) — is the world's oldest healing system. It sees each person as a unique blend of the five great elements, expressed through the three doshas: <em>Vata</em>, <em>Pitta</em>, and <em>Kapha</em>. </p> <p class="phil-text sr sr-d3" style="margin-top: 20px;"> Disease arises from imbalance. Healing comes from restoring harmony — not suppressing symptoms, but awakening the body's own intelligence. At SWAN, this is not theory. It is daily practice. </p> </div> </section> <!-- DRIFTING BAND --> <div class="band"> <div class="band-track"> <span class="band-item">Abhyanga</span><span class="band-item">Shirodhara</span><span class="band-item">Panchakarma</span><span class="band-item">Nasyam</span><span class="band-item">Navrakizhi</span><span class="band-item">Basti</span><span class="band-item">Virechan</span><span class="band-item">Pizhichil</span><span class="band-item">Clinical Yoga</span><span class="band-item">Marma</span> <span class="band-item">Abhyanga</span><span class="band-item">Shirodhara</span><span class="band-item">Panchakarma</span><span class="band-item">Nasyam</span><span class="band-item">Navrakizhi</span><span class="band-item">Basti</span><span class="band-item">Virechan</span><span class="band-item">Pizhichil</span><span class="band-item">Clinical Yoga</span><span class="band-item">Marma</span> </div> </div> <!-- ══════════════════════════════════════════ TRIDOSHA ANIMATED SECTION (NEW) ══════════════════════════════════════════ --> <section class="tridosha-section" id="tridosha"> <div class="tridosha-header sr"> <h2>The Three <span>Doshas</span></h2> <p>Vata · Pitta · Kapha — the pillars of your constitution</p> </div> <div class="tridosha-arena"> <!-- VATA card --> <div class="dosha-card vata sr"> <span class="dosha-symbol">🌬️</span> <div class="dosha-name">Vata</div> <span class="dosha-sanskrit">वात · Air & Space</span> <div class="dosha-elements"> <span class="dosha-elem">Air</span> <span class="dosha-elem">Space</span> <span class="dosha-elem">Movement</span> </div> <p class="dosha-desc">The force of movement and communication. Governs all biological activity — breathing, circulation, neural impulses. When balanced, it brings creativity, vitality, and joy.</p> <div class="dosha-qualities">Qualities: Dry · Light · Cold · Rough · Subtle · Mobile</div> </div> <!-- Central animated SVG --> <div class="tridosha-canvas-wrap sr sr-d1"> <svg id="tridosha-svg" viewBox="0 0 420 420" xmlns="http://www.w3.org/2000/svg"> <defs> <radialGradient id="tg-center" cx="50%" cy="50%" r="50%"> <stop offset="0%" stop-color="#7f9f69" stop-opacity="0.5"/> <stop offset="100%" stop-color="#7f9f69" stop-opacity="0"/> </radialGradient> <radialGradient id="tg-vata" cx="50%" cy="50%" r="50%"> <stop offset="0%" stop-color="#a8c8ff" stop-opacity="0.9"/> <stop offset="100%" stop-color="#a8c8ff" stop-opacity="0"/> </radialGradient> <radialGradient id="tg-pitta" cx="50%" cy="50%" r="50%"> <stop offset="0%" stop-color="#ffb080" stop-opacity="0.9"/> <stop offset="100%" stop-color="#ffb080" stop-opacity="0"/> </radialGradient> <radialGradient id="tg-kapha" cx="50%" cy="50%" r="50%"> <stop offset="0%" stop-color="#80d4a0" stop-opacity="0.9"/> <stop offset="100%" stop-color="#80d4a0" stop-opacity="0"/> </radialGradient> <filter id="glow"> <feGaussianBlur stdDeviation="3" result="coloredBlur"/> <feMerge><feMergeNode in="coloredBlur"/><feMergeNode in="SourceGraphic"/></feMerge> </filter> </defs> <!-- outer ambient circles --> <circle cx="210" cy="210" r="185" fill="none" stroke="rgba(127,159,105,0.06)" stroke-width="1"/> <circle cx="210" cy="210" r="160" fill="none" stroke="rgba(127,159,105,0.05)" stroke-width="0.5" stroke-dasharray="4 8"/> <!-- rotating group --> <g class="tri-rotate-group"> <!-- outer triangle --> <polygon class="tri-outer" points="210,40 370,310 50,310" fill="rgba(127,159,105,0.04)" stroke="rgba(127,159,105,0.35)" stroke-width="1.2"/> <!-- mid triangle --> <polygon class="tri-mid" points="210,75 340,285 80,285" fill="rgba(127,159,105,0.03)" stroke="rgba(127,159,105,0.2)" stroke-width="0.8"/> <!-- inner triangle --> <polygon class="tri-inner" points="210,110 310,270 110,270" fill="rgba(127,159,105,0.02)" stroke="rgba(127,159,105,0.12)" stroke-width="0.5"/> </g> <!-- energy rings --> <circle class="energy-ring-1" cx="210" cy="210" r="100" fill="none" stroke="rgba(127,159,105,0.25)" stroke-width="1" stroke-dasharray="6 10"/> <circle class="energy-ring-2" cx="210" cy="210" r="75" fill="none" stroke="rgba(127,159,105,0.18)" stroke-width="0.8" stroke-dasharray="3 7"/> <!-- center glow --> <circle cx="210" cy="210" r="55" fill="url(#tg-center)" opacity="0.6"/> <!-- center lotus petals --> <g class="center-lotus" filter="url(#glow)"> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5"/> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5" transform="rotate(60,210,210)"/> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5" transform="rotate(120,210,210)"/> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5" transform="rotate(180,210,210)"/> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5" transform="rotate(240,210,210)"/> <path d="M210,175 Q222,192 210,202 Q198,192 210,175Z" fill="rgba(127,159,105,0.55)" stroke="rgba(127,159,105,0.7)" stroke-width="0.5" transform="rotate(300,210,210)"/> </g> <!-- center dot --> <circle class="center-circle" cx="210" cy="210" r="7" fill="rgba(127,159,105,0.9)" filter="url(#glow)"/> <!-- Vata orb (top) --> <g class="vata-orb" filter="url(#glow)"> <circle cx="210" cy="48" r="16" fill="url(#tg-vata)" opacity="0.8"/> <circle cx="210" cy="48" r="8" fill="#a8c8ff" opacity="0.9"/> <text x="210" y="30" text-anchor="middle" font-family="Raleway,sans-serif" font-size="9" fill="rgba(168,200,255,0.7)" letter-spacing="2">VATA</text> </g> <!-- Pitta orb (bottom right) --> <g class="pitta-orb" filter="url(#glow)"> <circle cx="366" cy="318" r="16" fill="url(#tg-pitta)" opacity="0.8"/> <circle cx="366" cy="318" r="8" fill="#ffb080" opacity="0.9"/> <text x="366" y="344" text-anchor="middle" font-family="Raleway,sans-serif" font-size="9" fill="rgba(255,176,128,0.7)" letter-spacing="2">PITTA</text> </g> <!-- Kapha orb (bottom left) --> <g class="kapha-orb" filter="url(#glow)"> <circle cx="54" cy="318" r="16" fill="url(#tg-kapha)" opacity="0.8"/> <circle cx="54" cy="318" r="8" fill="#80d4a0" opacity="0.9"/> <text x="54" y="344" text-anchor="middle" font-family="Raleway,sans-serif" font-size="9" fill="rgba(128,212,160,0.7)" letter-spacing="2">KAPHA</text> </g> <!-- connecting lines from center to orbs --> <line x1="210" y1="210" x2="210" y2="64" stroke="rgba(168,200,255,0.15)" stroke-width="0.8" stroke-dasharray="3 6"/> <line x1="210" y1="210" x2="350" y2="311" stroke="rgba(255,176,128,0.15)" stroke-width="0.8" stroke-dasharray="3 6"/> <line x1="210" y1="210" x2="70" y2="311" stroke="rgba(128,212,160,0.15)" stroke-width="0.8" stroke-dasharray="3 6"/> <!-- sanskrit center label --> <text x="210" y="400" text-anchor="middle" font-family="serif" font-size="20" fill="rgba(127,159,105,0.2)" letter-spacing="2">त्रिदोष</text> </svg> </div> <!-- PITTA card (right) — but we need kapha too, so we'll stack on mobile --> <div style="display:flex; flex-direction:column; gap:24px;"> <!-- PITTA card --> <div class="dosha-card pitta sr sr-d2"> <span class="dosha-symbol">🔥</span> <div class="dosha-name">Pitta</div> <span class="dosha-sanskrit">पित्त · Fire & Water</span> <div class="dosha-elements"> <span class="dosha-elem">Fire</span> <span class="dosha-elem">Water</span> <span class="dosha-elem">Transformation</span> </div> <p class="dosha-desc">The force of transformation. Governs digestion, metabolism, intelligence, and perception. When balanced, it fuels courage, clarity, and the capacity to lead.</p> <div class="dosha-qualities">Qualities: Hot · Sharp · Light · Liquid · Mobile</div> </div> <!-- KAPHA card --> <div class="dosha-card kapha sr sr-d3"> <span class="dosha-symbol">🌊</span> <div class="dosha-name">Kapha</div> <span class="dosha-sanskrit">कफ · Earth & Water</span> <div class="dosha-elements"> <span class="dosha-elem">Earth</span> <span class="dosha-elem">Water</span> <span class="dosha-elem">Structure</span> </div> <p class="dosha-desc">The force of cohesion and stability. It builds, lubricates, and sustains the body. When balanced, it brings calmness, love, strength, and groundedness.</p> <div class="dosha-qualities">Qualities: Heavy · Slow · Cool · Oily · Smooth · Dense</div> </div> </div> </div> </section> <!-- ══════════════════════════════════════════ DHANWANTRI SECTION (NEW) ══════════════════════════════════════════ --> <section class="dhanwantri" id="dhanwantri"> <!-- left: divine art --> <div class="dhw-art"> <!-- animated mandala --> <div class="dhw-mandala"> <svg id="dhw-mandala-svg" viewBox="0 0 580 580" xmlns="http://www.w3.org/2000/svg"> <defs> <radialGradient id="mg1" cx="50%" cy="50%" r="50%"> <stop offset="0%" stop-color="#c8a84b" stop-opacity="0.6"/> <stop offset="100%" stop-color="#c8a84b" stop-opacity="0"/> </radialGradient> </defs> <!-- concentric rings --> <circle class="mandala-ring-1" cx="290" cy="290" r="260" fill="none" stroke="rgba(200,168,75,0.4)" stroke-width="1"/> <circle cx="290" cy="290" r="240" fill="none" stroke="rgba(200,168,75,0.15)" stroke-width="0.5" stroke-dasharray="4 8"/> <circle class="mandala-ring-2" cx="290" cy="290" r="200" fill="none" stroke="rgba(200,168,75,0.35)" stroke-width="1"/> <circle cx="290" cy="290" r="180" fill="none" stroke="rgba(200,168,75,0.1)" stroke-width="0.5" stroke-dasharray="2 6"/> <circle class="mandala-ring-3" cx="290" cy="290" r="140" fill="none" stroke="rgba(200,168,75,0.3)" stroke-width="1"/> <circle cx="290" cy="290" r="100" fill="url(#mg1)" opacity="0.3"/> <!-- 8-petal lotus outer --> <g opacity="0.5"> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(45,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(90,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(135,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(180,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(225,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(270,290,290)"/> <path d="M290,60 Q310,170 290,195 Q270,170 290,60Z" fill="rgba(200,168,75,0.3)" stroke="rgba(200,168,75,0.5)" stroke-width="0.8" transform="rotate(315,290,290)"/> </g> <!-- inner 6-petal lotus --> <g opacity="0.7"> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8"/> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8" transform="rotate(60,290,290)"/> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8" transform="rotate(120,290,290)"/> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8" transform="rotate(180,290,290)"/> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8" transform="rotate(240,290,290)"/> <path d="M290,220 Q302,252 290,265 Q278,252 290,220Z" fill="rgba(200,168,75,0.5)" stroke="rgba(200,168,75,0.8)" stroke-width="0.8" transform="rotate(300,290,290)"/> </g> <!-- spokes --> <g opacity="0.12" stroke="rgba(200,168,75,1)" stroke-width="0.6"> <line x1="290" y1="30" x2="290" y2="550"/> <line x1="30" y1="290" x2="550" y2="290"/> <line x1="106" y1="106" x2="474" y2="474"/> <line x1="474" y1="106" x2="106" y2="474"/> </g> <!-- Om symbol center --> <text x="290" y="305" text-anchor="middle" font-family="serif" font-size="44" fill="rgba(200,168,75,0.6)">ॐ</text> </svg> </div> <!-- divine light rays --> <div class="dhw-rays"> <svg id="dhw-rays-svg" viewBox="0 0 400 400" xmlns="http://www.w3.org/2000/svg"> <g transform="translate(200,200)"> <line x1="0" y1="-190" x2="0" y2="190" stroke="rgba(200,168,75,1)" stroke-width="1"/> <line x1="-190" y1="0" x2="190" y2="0" stroke="rgba(200,168,75,1)" stroke-width="1"/> <line x1="-134" y1="-134" x2="134" y2="134" stroke="rgba(200,168,75,1)" stroke-width="0.8"/> <line x1="134" y1="-134" x2="-134" y2="134" stroke="rgba(200,168,75,1)" stroke-width="0.8"/> <line x1="-72" y1="-178" x2="72" y2="178" stroke="rgba(200,168,75,1)" stroke-width="0.5"/> <line x1="72" y1="-178" x2="-72" y2="178" stroke="rgba(200,168,75,1)" stroke-width="0.5"/> <line x1="-178" y1="-72" x2="178" y2="72" stroke="rgba(200,168,75,1)" stroke-width="0.5"/> <line x1="-178" y1="72" x2="178" y2="-72" stroke="rgba(200,168,75,1)" stroke-width="0.5"/> <line x1="-40" y1="-189" x2="40" y2="189" stroke="rgba(200,168,75,1)" stroke-width="0.4"/> <line x1="40" y1="-189" x2="-40" y2="189" stroke="rgba(200,168,75,1)" stroke-width="0.4"/> <line x1="-189" y1="-40" x2="189" y2="40" stroke="rgba(200,168,75,1)" stroke-width="0.4"/> <line x1="-189" y1="40" x2="189" y2="-40" stroke="rgba(200,168,75,1)" stroke-width="0.4"/> </g> </svg> </div> <!-- halo glow --> <div class="dhw-halo"></div> <!-- the figure --> <img class="dhw-figure" src="assets/lord_dhanwantri.png" alt="Lord Dhanwantri" loading="lazy"> <canvas class="dhw-particles-wrap" id="dhw-particles" width="600" height="700" style="position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;"></canvas> </div> <!-- right: text body --> <div class="dhw-body"> <div class="dhw-kicker sr">The Divine Physician</div> <h2 class="dhw-heading sr sr-d1">Lord <span>Dhanwantri</span></h2> <div class="dhw-sanskrit-title sr sr-d1">धन्वन्तरि</div> <div class="dhw-divider sr sr-d2"></div> <p class="dhw-intro sr sr-d2"> Lord Dhanwantri is the <em>divine originator of Ayurveda</em> — the celestial physician who emerged from the cosmic ocean at creation, bearing in his four sacred hands the gifts of healing for all of humanity. </p> <p class="dhw-intro sr sr-d3" style="margin-top: -20px;"> He holds the <em>Amrita Kalasha</em> — the pot of immortal nectar — symbolising the power of Ayurveda to restore vitality and extend life. At SWAN, every treatment is offered as an act of reverence to this ancient tradition he brought to earth. </p> <!-- four sacred hands / attributes --> <div class="dhw-attributes sr sr-d3"> <div class="dhw-attr"> <span class="dhw-attr-icon">🐚</span> <span class="dhw-attr-name">Shankha</span> <p class="dhw-attr-text">The sacred conch — symbol of the primordial sound of creation and divine vibration.</p> </div> <div class="dhw-attr"> <span class="dhw-attr-icon">☸️</span> <span class="dhw-attr-name">Sudarshana Chakra</span> <p class="dhw-attr-text">The divine discus — representing the cyclical nature of time, karma, and cosmic order.</p> </div> <div class="dhw-attr"> <span class="dhw-attr-icon">🏺</span> <span class="dhw-attr-name">Amrita Kalasha</span> <p class="dhw-attr-text">The nectar of immortality — the highest gift of Ayurveda: restored life and radiant health.</p> </div> <div class="dhw-attr"> <span class="dhw-attr-icon">🌿</span> <span class="dhw-attr-name">Medicinal Herbs</span> <p class="dhw-attr-text">Sacred plants and leech — the tools of healing, given to physicians to serve all beings.</p> </div> </div> <!-- mantra --> <div class="dhw-mantra sr sr-d4"> <div class="dhw-mantra-text">ॐ नमो भगवते वासुदेवाय धन्वन्तरये</div> <div class="dhw-mantra-trans">Om Namo Bhagavate Vasudevaya Dhanvantaraye · The Divine Healing Invocation</div> </div> </div> </section> <!-- TREATMENTS --> <section class="treatments" id="treatments"> <div class="treatments-label"> <h2 class="sr">Ways<br>we <em>heal</em></h2> <span class="sub">Therapies</span> </div> <div class="treatment-flow"> <div class="t-row sr"> <span class="t-num">01</span> <div class="t-name-block"> <div class="t-name">Abhyanga</div> <div class="t-sanskrit">Full Body Oil Massage</div> </div> <div class="t-desc">The classical warm oil massage — a ritual of profound nourishment. Medicated oils penetrate seven tissue layers, dissolving stagnation, awakening circulation, and wrapping the nervous system in stillness.</div> </div> <div class="t-row sr sr-d1"> <span class="t-num">02</span> <div class="t-name-block"> <div class="t-name">Shirodhara</div> <div class="t-sanskrit">Third Eye Oil Stream</div> </div> <div class="t-desc">A continuous, meditative thread of warm oil poured at the seat of consciousness. For anxiety, insomnia, and the mind that will not rest — this is the most profound of all Ayurvedic therapies.</div> </div> <div class="t-row sr sr-d2"> <span class="t-num">03</span> <div class="t-name-block"> <div class="t-name">Panchakarma</div> <div class="t-sanskrit">Five Sacred Purifications</div> </div> <div class="t-desc">The crown jewel of Ayurvedic medicine. A complete detoxification of body and mind — removing years of accumulated toxins, restoring cellular intelligence, and resetting your baseline of health.</div> </div> <div class="t-row sr sr-d3"> <span class="t-num">04</span> <div class="t-name-block"> <div class="t-name">Navrakizhi</div> <div class="t-sanskrit">Rice Bolus Therapy</div> </div> <div class="t-desc">Warm boluses of medicated rice massaged rhythmically across the body — drawing inflammation inward, nourishing depleted tissues, and igniting the body's regenerative power.</div> </div> <div class="t-row sr"> <span class="t-num">05</span> <div class="t-name-block"> <div class="t-name">Nasyam</div> <div class="t-sanskrit">Nasal Purification</div> </div> <div class="t-desc">Medicated oils and herbal vapors journey through the nasal passage — the gateway to the brain. For migraines, sinusitis, memory, and the clarity of a mind freed from fog.</div> </div> <div class="t-row sr sr-d1"> <span class="t-num">06</span> <div class="t-name-block"> <div class="t-name">Marma Chikitsa</div> <div class="t-sanskrit">Vital Point Therapy</div> </div> <div class="t-desc">Gentle pressure upon 107 sacred points where body, mind, and consciousness converge. An ancient acupressure awakening the body's subtle energy and unlocking blocked prana.</div> </div> </div> </section> <!-- PACKAGES --> <section class="packages" id="packages"> <div class="packages-header sr"> <h2>Choose your<br><span>Healing</span><br>Journey.</h2> </div> <div class="pkg-grid"> <div class="pkg sr"> <div class="pkg-week">2</div> <span class="pkg-duration">Two Weeks</span> <div class="pkg-name">The First Step</div> <div class="pkg-line"></div> <p class="pkg-desc">Your first encounter with the living wisdom of Ayurveda. A foundational cleanse, orientation of the senses, and an opening of the healing pathway.</p> <ul class="pkg-list"> <li>Ayurvedic physician consultation</li> <li>Daily personalized therapies</li> <li>Herbal medicine protocol</li> <li>Morning yoga & pranayama</li> <li>Sattvic Ayurvedic meals</li> <li>Eco-hut accommodation</li> </ul> <a href="#contact" class="pkg-cta">Enquire</a> </div> <div class="pkg sr sr-d1"> <div class="pkg-week">3</div> <span class="pkg-duration">Three Weeks · Signature</span> <div class="pkg-name">Deep Renewal</div> <div class="pkg-line"></div> <p class="pkg-desc">Our most-loved programme. Three weeks of complete surrender to the healing arts — a profound journey of purification, restoration, and the rediscovery of self.</p> <ul class="pkg-list"> <li>Nadi Pariksha pulse diagnosis</li> <li>Full Panchakarma protocol</li> <li>Daily Abhyanga & Shirodhara</li> <li>Personalized herbal formulations</li> <li>Yoga, meditation & pranayama</li> <li>Sattvic diet & nutrition guidance</li> <li>Take-home wellness blueprint</li> </ul> <a href="#contact" class="pkg-cta">Enquire</a> </div> <div class="pkg sr sr-d2"> <div class="pkg-week">4</div> <span class="pkg-duration">Four Weeks · Immersive</span> <div class="pkg-name">Total Transformation</div> <div class="pkg-line"></div> <p class="pkg-desc">The most complete healing experience we offer. A full month of immersion — for those who are ready to leave the old self behind and return, wholly renewed.</p> <ul class="pkg-list"> <li>All from the 3-week programme</li> <li>Advanced Panchakarma stages</li> <li>Specialized condition protocols</li> <li>Marma therapy</li> <li>Ayurveda study & philosophy</li> <li>Lifetime wellness protocol</li> </ul> <a href="#contact" class="pkg-cta">Enquire</a> </div> </div> </section> <!-- RITUAL --> <section class="ritual" id="about"> <div class="ritual-intro"> <h2 class="sr">The<br>Ritual<br>of Healing.</h2> <p class="sr sr-d1">At SWAN, every day is a ceremony. From the first consultation to the final therapy, each step is a deliberate act of care — guided by our Ayurvedic physicians, held within the arms of nature.</p> </div> <div class="ritual-steps"> <div class="rstep sr"><span class="rstep-num">I</span><div class="rstep-line"></div><span class="rstep-name">Consult</span><p class="rstep-text">A deep conversation with your physician. Your story, your constitution, your imbalances — all listened to with care.</p></div> <div class="rstep sr sr-d1"><span class="rstep-num">II</span><div class="rstep-line"></div><span class="rstep-name">Diagnose</span><p class="rstep-text">Nadi Pariksha — pulse diagnosis — reads the subtle language of your body. Your unique protocol begins to emerge.</p></div> <div class="rstep sr sr-d2"><span class="rstep-num">III</span><div class="rstep-line"></div><span class="rstep-name">Heal</span><p class="rstep-text">Ancient therapies, herbal medicines, food as medicine, and the stillness of Goa's nature conspire to restore you.</p></div> <div class="rstep sr sr-d3"><span class="rstep-num">IV</span><div class="rstep-line"></div><span class="rstep-name">Sustain</span><p class="rstep-text">You leave with a blueprint for life — daily rhythms, seasonal practices, and the knowledge to tend your own healing.</p></div> </div> </section> <!-- TESTIMONIAL --> <section class="testi"> <p class="testi-text sr" id="testi-text">Wonderful place, wonderful staff. We were taken such good care of — clean, nourishing food, and a team that genuinely cares. We benefited enormously from our stay.</p> <div class="testi-author sr sr-d1" id="testi-author">Peter Meioa · TripAdvisor</div> <div class="testi-nav"> <button class="active" onclick="switchT(0)"></button> <button onclick="switchT(1)"></button> <button onclick="switchT(2)"></button> </div> </section> <!-- LOCATION --> <section class="location" id="contact"> <div class="location-poem"> <h2 class="sr">Nestled in<br>the heart of<br><span>Goa.</span></h2> <p class="sr sr-d1">A green sanctuary in Assagao, North Goa — where the pace of life slows, the air carries the scent of herbs, and nature herself becomes part of your treatment.</p> <div class="contact-block sr sr-d2"> <div class="contact-item"><span class="contact-label">Phone</span><span class="contact-val">+91 8007 360 677</span></div> <div class="contact-item"><span class="contact-label">Email</span><span class="contact-val">swanayurvedagoa@gmail.com</span></div> <div class="contact-item"><span class="contact-label">Address</span><span class="contact-val">Assagao, Bardez, Goa 403507</span></div> </div> </div> <div class="location-visual"> <img class="location-media" src="assets/charanjeet-dhiman-XYVJkf07JNc-unsplash.jpg" alt="Serene natural view in Goa" loading="lazy"> <svg viewBox="0 0 600 700" preserveAspectRatio="xMidYMid slice" xmlns="http://www.w3.org/2000/svg"> <rect width="600" height="700" fill="#223126"/> <radialGradient id="lg1" cx="50%" cy="50%" r="60%"><stop offset="0%" stop-color="#5c7a52" stop-opacity="0.3"/><stop offset="100%" stop-color="#223126" stop-opacity="0"/></radialGradient> <rect width="600" height="700" fill="url(#lg1)"/> <g transform="translate(300,350)"> <circle r="200" fill="none" stroke="rgba(127,159,105,0.06)" stroke-width="1"/> <circle r="160" fill="none" stroke="rgba(127,159,105,0.08)" stroke-width="0.7" stroke-dasharray="3 9"/> <circle r="60" fill="none" stroke="rgba(127,159,105,0.15)" stroke-width="1"/> <circle r="6" fill="rgba(127,159,105,0.6)"/> <line x1="0" y1="-200" x2="0" y2="200" stroke="rgba(127,159,105,0.08)" stroke-width="0.5"/> <line x1="-200" y1="0" x2="200" y2="0" stroke="rgba(127,159,105,0.08)" stroke-width="0.5"/> <text y="-215" text-anchor="middle" font-family="Raleway,sans-serif" font-size="10" fill="rgba(127,159,105,0.4)" letter-spacing="2">GOA</text> </g> </svg> <div class="location-cta-block"> <p>"Come experience<br>authentic Ayurveda<br>in Goa."</p> <a href="mailto:swanayurvedagoa@gmail.com" class="btn-art">Write to Us</a> </div> </div> </section> <!-- CLOSING --> <section class="closing"> <h2 class="sr">Begin.</h2> <p class="sr sr-d1">Your body is waiting to remember how to heal. Five thousand years of wisdom, held in the hands of our physicians, ready to be offered to you — in the green heart of Goa.</p> <a href="mailto:swanayurvedagoa@gmail.com" class="btn-close sr sr-d2">Send Your Enquiry</a> <div class="closing-sanskrit sr sr-d3">हरिः ॐ</div> </section> <!-- FOOTER --> <footer> <div class="footer-mark">Swan Ayurveda · Goa</div> <div class="footer-links"> <a href="#treatments">Treatments</a> <a href="#packages">Journeys</a> <a href="#about">About</a> <a href="#dhanwantri">Dhanwantri</a> <a href="#contact">Contact</a> </div> <div class="footer-copy">© 2025 SWAN Ayurveda. Goa, India.</div> </footer> <script> // ── Scroll reveal ── const io = new IntersectionObserver(entries => { entries.forEach(e => { if (e.isIntersecting) e.target.classList.add('in'); }); }, { threshold: 0.1 }); document.querySelectorAll('.sr').forEach(el => io.observe(el)); // ── Testimonials ── const T = [ { t: "Wonderful place, wonderful staff. We were taken such good care of — clean, nourishing food, and a team that genuinely cares. We benefited enormously from our stay.", a: "Peter Meioa · TripAdvisor" }, { t: "Probably the most authentic Panchakarma experience I have had in India. The doctors are exceptional — deeply knowledgeable, present, and utterly committed to your healing.", a: "Sarah K. · Google Reviews" }, { t: "Three weeks that changed my relationship with my own body. I arrived exhausted and brittle. I left feeling I had been returned to myself — softer, stronger, alive.", a: "Marco D. · TripAdvisor" } ]; let cur = 0; function switchT(i) { cur = i; const tx = document.getElementById('testi-text'); const ta = document.getElementById('testi-author'); tx.style.opacity = 0; ta.style.opacity = 0; setTimeout(() => { tx.textContent = T[i].t; ta.textContent = T[i].a; tx.style.opacity = 1; ta.style.opacity = 1; }, 400); document.querySelectorAll('.testi-nav button').forEach((b, j) => b.classList.toggle('active', j === i)); } setInterval(() => switchT((cur + 1) % T.length), 6000); // ── Dhanwantri particle canvas ── (function() { const canvas = document.getElementById('dhw-particles'); if (!canvas) return; const ctx = canvas.getContext('2d'); const particles = []; const NUM = 30; function resize() { canvas.width = canvas.offsetWidth; canvas.height = canvas.offsetHeight; } resize(); window.addEventListener('resize', resize); for (let i = 0; i < NUM; i++) { particles.push({ x: Math.random() * canvas.width, y: Math.random() * canvas.height, r: Math.random() * 2.5 + 0.5, vx: (Math.random() - 0.5) * 0.4, vy: (Math.random() - 0.5) * 0.4 - 0.3, life: Math.random(), maxLife: Math.random() * 0.5 + 0.5, color: `rgba(${200 + Math.floor(Math.random()*40)}, ${160 + Math.floor(Math.random()*30)}, ${60 + Math.floor(Math.random()*30)},` }); } function draw() { ctx.clearRect(0, 0, canvas.width, canvas.height); particles.forEach(p => { p.x += p.vx; p.y += p.vy; p.life -= 0.003; if (p.life <= 0) { p.x = Math.random() * canvas.width; p.y = canvas.height * 0.6 + Math.random() * canvas.height * 0.3; p.life = p.maxLife; } const alpha = Math.sin(p.life * Math.PI) * 0.6; ctx.beginPath(); ctx.arc(p.x, p.y, p.r, 0, Math.PI * 2); ctx.fillStyle = p.color + alpha + ')'; ctx.fill(); }); requestAnimationFrame(draw); } draw(); })(); // ── Interactive tridosha hover ── document.querySelectorAll('.dosha-card').forEach(card => { card.addEventListener('mouseenter', function() { // Pulse the svg center const center = document.querySelector('.center-circle'); if (center) center.style.animationDuration = '0.8s'; }); card.addEventListener('mouseleave', function() { const center = document.querySelector('.center-circle'); if (center) center.style.animationDuration = '2.5s'; }); }); </script> </body> </html>