:root{--mint:#98cdbd;--mint-deep:#39766f;--mint-soft:#e8f5f0;--brown:#8a624c;--brown-dark:#5c463a;--peach:#f5d6c2;--blue:#d9edf2;--cream:#fffaf3;--ink:#3d4d49;--white:#fff;--shadow:0 22px 60px rgba(55,89,79,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.7 Manrope,Arial,sans-serif}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,250,243,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(92,70,58,.07)}.nav{height:82px;display:flex;align-items:center;gap:28px}.brand{width:180px;margin-right:auto}.brand img{width:100%;height:60px;object-fit:contain}.nav nav{display:flex;gap:28px;font-weight:700;font-size:14px}.nav nav a{position:relative}.nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--mint-deep);transition:.25s}.nav nav a:hover:after{right:0}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 24px;background:var(--mint-deep);color:#fff;font-weight:800;box-shadow:0 8px 22px rgba(57,118,111,.18);transition:.25s}.pill:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(57,118,111,.26)}.pill-small{padding:10px 18px;font-size:14px}.menu-button{display:none;border:0;background:none;font-size:24px}
.hero{position:relative;overflow:hidden;padding:70px 0 85px}.hero-grid{min-height:590px;display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.hero-copy{position:relative;z-index:2}.eyebrow{display:block;color:var(--brown);font-weight:800;letter-spacing:.16em;font-size:12px;margin-bottom:13px}.hero h1,.section-heading h2,.about h2,.contact h2{font-family:Comfortaa,sans-serif;color:var(--brown-dark);font-weight:700}.hero h1{font-size:clamp(48px,5.9vw,79px);line-height:1.06;letter-spacing:-.045em;margin:0 0 22px}.hero h1 em{font-style:normal;color:var(--mint-deep);position:relative}.hero-copy>p{font-size:18px;max-width:590px;color:#61716c;margin:0 0 30px}.hero-actions{display:flex;align-items:center;gap:26px}.text-link{font-weight:800;color:var(--brown-dark)}.text-link span{display:inline-block;margin-left:7px;transition:.25s}.text-link:hover span{transform:translate(3px,3px)}.trust-row{display:flex;align-items:center;gap:12px;margin-top:42px;color:#72807c;font-size:13px;font-weight:700}.trust-row i{width:5px;height:5px;border-radius:50%;background:var(--peach)}.hero-visual{position:relative;min-height:570px}.photo-shell{height:540px;border-radius:47% 53% 42% 58%/55% 38% 62% 45%;overflow:hidden;border:9px solid #fff;box-shadow:var(--shadow);transform:rotate(1deg)}.photo-shell img{width:100%;height:100%;object-fit:cover}.sample-badge{position:absolute;top:20px;right:16px;padding:7px 12px;background:rgba(255,255,255,.88);border-radius:999px;font-size:11px;font-weight:800}.floating-card{position:absolute;left:-45px;bottom:16px;background:#fff;border-radius:20px;padding:18px 22px;box-shadow:var(--shadow);display:flex;flex-direction:column}.floating-card strong{font-family:Comfortaa;color:var(--brown-dark)}.floating-card span{font-size:13px;color:#7a8884}.doodle{position:absolute;width:130px;color:var(--peach);right:-35px;top:5px;transform:rotate(-15deg)}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:380px;height:380px;background:#e5f3ee;right:-150px;top:160px}.orb-two{width:160px;height:160px;background:#fae4d5;left:-70px;bottom:-20px}
.schedule-section{padding:92px 0;background:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:38px}.section-heading h2,.about h2,.contact h2{font-size:clamp(34px,4vw,52px);line-height:1.15;margin:0}.section-heading>p{max-width:550px;margin:0;color:#73817d}.section-heading.centered{display:block;text-align:center}.section-heading.centered p{margin:14px auto 0}.schedule-card{background:var(--cream);border:1px solid #f1e9dd;border-radius:30px;padding:32px;box-shadow:0 15px 45px rgba(77,63,51,.07)}.schedule-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.schedule-top h3{font-family:Comfortaa;color:var(--brown-dark);font-size:26px;margin:6px 0 0}.schedule-top>div>span{font-size:13px;font-weight:700;color:#72817c}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mint-deep);margin-right:7px}.month-nav{display:flex;gap:8px}.month-nav button{border:1px solid #ded8cf;background:#fff;border-radius:12px;padding:9px 13px;color:var(--brown-dark);font-weight:800;cursor:pointer}.schedule-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.day-card{background:#fff;border-radius:18px;padding:19px;min-height:124px;border:1px solid #eee8df;transition:.25s}.day-card:hover{transform:translateY(-3px);border-color:var(--mint)}.day-card b{display:block;color:var(--brown-dark);margin-bottom:10px}.day-card span{display:block;color:var(--mint-deep);font-size:19px;font-weight:800}.day-card small{color:#84908d}.day-card.active{background:var(--mint-deep);color:#fff}.day-card.active b,.day-card.active span,.day-card.active small{color:#fff}.schedule-note{margin-top:18px;padding:13px 17px;border-radius:14px;background:#fff1e5;color:#8b654e;font-size:13px}
.services{padding:100px 0;background:linear-gradient(180deg,#fff 0,var(--cream) 100%)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;border-radius:30px;padding:32px;min-height:300px;overflow:hidden;transition:.3s}.service-card:hover{transform:translateY(-7px)}.service-card.peach{background:#f8e1d3}.service-card.mint{background:#ddefe9}.service-card.blue{background:#dfedf2}.service-card .icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:rgba(255,255,255,.7);font-size:29px;color:var(--brown)}.service-card small{position:absolute;right:26px;top:23px;font:700 44px Comfortaa;color:rgba(92,70,58,.10)}.service-card h3{font:700 22px/1.3 Comfortaa;color:var(--brown-dark);margin:46px 0 12px}.service-card p{margin:0;color:#64736f}
.about{padding:105px 0;background:#fff}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:85px;align-items:center}.about-collage{position:relative;padding:0 35px 45px 0}.about-main{height:540px;width:100%;object-fit:cover;border-radius:36px}.about-shape{position:absolute;right:0;bottom:0;width:255px;background:var(--mint-deep);color:#fff;border-radius:26px;padding:26px;box-shadow:var(--shadow)}.about-shape strong{font:700 18px Comfortaa;display:block}.about-shape span{font-size:13px;opacity:.8}.about-copy>p{font-size:17px;color:#6c7b77}.about-copy ul{list-style:none;padding:0;margin:28px 0 0}.about-copy li{display:flex;gap:12px;margin:14px 0;font-weight:700;color:var(--brown-dark)}.about-copy li span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--mint-soft);color:var(--mint-deep)}
.contact{padding:95px 0;background:var(--mint-soft)}.contact-panel{display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border-radius:36px;overflow:hidden;box-shadow:var(--shadow)}.contact-info{padding:52px}.contact-list{margin-top:26px}.detail{padding:13px 0;border-bottom:1px solid #eee9e3;display:flex;flex-direction:row;align-items:center;gap:13px}.detail>div{display:flex;flex-direction:column}.detail b{color:var(--brown-dark);font-size:13px}.detail span,.detail a{color:#73817d}.detail a:hover{color:var(--mint-deep)}.detail-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:var(--mint-soft);display:grid;place-items:center}.detail-icon svg{width:21px;height:21px;fill:none;stroke:var(--mint-deep);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.social-links{display:flex;gap:10px;margin-top:18px}.social-links a{display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:var(--mint-soft);color:var(--mint-deep);font-size:13px;font-weight:800}.social-icon{font-size:17px;font-weight:800}.pill.dark{margin-top:25px;background:var(--brown-dark)}.map-wrap{position:relative;min-height:560px;background:#e9eee9}.map-wrap iframe{border:0;width:100%;height:100%}.map-wrap>span{position:absolute;left:18px;right:18px;bottom:18px;padding:10px 14px;text-align:center;background:rgba(255,255,255,.92);border-radius:12px;font-size:12px;font-weight:700}
footer{padding:34px 0;background:var(--brown-dark);color:#fff}.footer-grid{display:flex;align-items:center;gap:28px}.footer-grid img{width:215px;height:72px;object-fit:contain;background:var(--cream);border-radius:16px;padding:8px 12px}.footer-grid p{margin-right:auto}.footer-grid span{opacity:.65;font-size:13px}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav nav,.nav>.pill{display:none}.menu-button{display:block}.hero-grid,.about-grid,.contact-panel{grid-template-columns:1fr}.hero{padding-top:35px}.hero-grid{gap:35px}.hero-visual{min-height:480px}.photo-shell{height:455px}.section-heading{display:block}.section-heading>p{margin-top:14px}.schedule-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.about-grid{gap:45px}.map-wrap{min-height:420px}.mobile-bar{position:fixed;z-index:70;bottom:12px;left:4%;right:4%;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:999px;box-shadow:var(--shadow);overflow:hidden;padding:5px}.mobile-bar a{text-align:center;padding:11px;font-weight:800;font-size:13px}.mobile-bar a:first-child{background:var(--mint-deep);color:#fff;border-radius:999px}footer{padding-bottom:90px}}
@media(max-width:560px){.brand{width:148px}.nav{height:72px}.hero h1{font-size:44px}.hero-copy>p{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{flex-wrap:wrap;margin-top:30px}.hero-visual{min-height:390px}.photo-shell{height:370px;border-radius:32px}.floating-card{left:12px;right:12px;bottom:0}.schedule-section,.services,.about,.contact{padding:70px 0}.schedule-card{padding:18px}.schedule-top{align-items:flex-start;gap:16px}.month-nav #todayMonth{display:none}.schedule-grid{grid-template-columns:1fr}.day-card{min-height:0}.about-collage{padding-right:0}.about-main{height:390px}.about-shape{position:relative;width:90%;margin:-45px auto 0}.contact-info{padding:30px 24px}.footer-grid{flex-direction:column;text-align:center;gap:8px}.footer-grid p{margin:0}}

/* Larger approved logo for readable doctor name */
.nav{height:150px}
.brand{width:420px}
.brand img{height:140px}
@media(max-width:560px){.brand{width:300px}.nav{height:118px}.brand img{height:110px}}

/* Slightly smaller approved hero heading */
.hero h1{font-size:clamp(42px,5.2vw,69px)}
@media(max-width:560px){.hero h1{font-size:38px}}

/* Motion and interaction polish */
.contact h2{font-size:clamp(27px,3vw,39px)}
.brand img{transition:transform .35s ease}.brand:hover img{transform:scale(1.025)}
.hero h1 em{background:linear-gradient(100deg,var(--mint-deep) 15%,#55bfae 48%,var(--mint-deep) 82%);background-size:220% auto;color:transparent;background-clip:text;-webkit-background-clip:text;animation:title-shimmer 7s ease-in-out infinite}
.hero h1 em:after{content:"";position:absolute;left:3%;right:5%;bottom:-7px;height:8px;border-radius:50%;border-top:3px solid var(--peach);transform:rotate(-1deg) scaleX(0);transform-origin:left;animation:underline-draw .9s .45s ease forwards}
.orb-one{animation:orb-drift-one 10s ease-in-out infinite alternate}.orb-two{animation:orb-drift-two 8s ease-in-out infinite alternate}
.photo-shell{will-change:transform;transition:transform .18s ease-out,box-shadow .35s ease}.hero-visual:hover .photo-shell{box-shadow:0 28px 72px rgba(55,89,79,.18)}
.floating-card{animation:card-float 4.8s ease-in-out infinite}.live-dot{animation:soft-pulse 2.2s ease-out infinite}
.doodle path{stroke-dasharray:220;stroke-dashoffset:220;animation:line-draw 1.3s .7s ease forwards}
.service-card:after{content:"";position:absolute;inset:auto -35% -55% 20%;height:155px;border-radius:50%;background:rgba(255,255,255,.33);transform:rotate(-12deg);transition:transform .45s ease}.service-card:hover:after{transform:translateY(-22px) rotate(-12deg)}
.service-card:nth-child(2){transition-delay:.08s}.service-card:nth-child(3){transition-delay:.16s}
.detail-icon{transition:transform .25s ease,background .25s ease}.detail:hover .detail-icon{transform:rotate(-5deg) scale(1.08);background:#d8eee7}

/* Refined navigation, contact palette and footer */
.nav nav{gap:30px;font-family:"Lobster Two",cursive;font-size:21px;font-weight:400;line-height:1}
.nav nav a:after{bottom:-10px;height:3px;border-radius:3px}

.contact-list .detail:nth-child(1) .detail-icon{background:#f9dfd6}.contact-list .detail:nth-child(1) .detail-icon svg{stroke:#c9785d}
.contact-list .detail:nth-child(2) .detail-icon{background:#dcefe8}.contact-list .detail:nth-child(2) .detail-icon svg{stroke:#39766f}
.contact-list .detail:nth-child(3) .detail-icon{background:#eee3f4}.contact-list .detail:nth-child(3) .detail-icon svg{stroke:#8a66a0}
.contact-list .detail:hover .detail-icon{filter:saturate(1.08);transform:rotate(-5deg) scale(1.08)}
.social-links a:first-child{background:#f9dfd6;color:#a95f4c}.social-links a:nth-child(2){background:#e1eaf7;color:#52719c}

footer{position:relative;padding:0;background:linear-gradient(135deg,#fffaf3 0%,#f5f0ea 46%,#e8f4ef 100%);color:var(--ink);border-top:1px solid rgba(57,118,111,.12)}
footer:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#efb3a2,#aad8ca,#cdb4dc,#efcc8f)}
.footer-main{display:grid;grid-template-columns:minmax(340px,1.7fr) 1fr 1fr;gap:70px;padding:54px 0 38px;align-items:start}
.footer-brand img{width:310px;height:auto;object-fit:contain}
.footer-tagline{margin:8px 0 0 10px;font-family:"Bad Script",cursive;font-size:18px;font-weight:500;line-height:1.45;color:var(--brown)}
.slogan-exclaim{display:inline-block;margin-left:1px;font-family:Manrope,Arial,sans-serif;font-size:.72em;font-weight:500;line-height:1;vertical-align:.08em}
.tagline-brown{color:var(--brown)}.tagline-mint{color:#2f978c}
.slogan-smile{position:relative;display:inline-block;width:16px;height:12px;margin-left:3px;vertical-align:-1px;color:var(--brown)}
.slogan-smile:before{content:"";position:absolute;left:2px;top:0;width:3px;height:3px;border-radius:50%;background:currentColor;box-shadow:9px 0 0 currentColor}
.slogan-smile:after{content:"";position:absolute;left:1px;top:2px;width:14px;height:8px;border-bottom:1.7px solid currentColor;border-radius:0 0 14px 14px}
.services[id],.schedule-section[id],.about[id],.contact[id]{scroll-margin-top:100px}
.schedule-section,.services,.about,.contact{padding-top:80px;padding-bottom:80px}
.appointment-button{position:relative;border:0;font:800 14px/1.2 Manrope,Arial,sans-serif;cursor:help}
.appointment-button:after{content:attr(data-note);position:absolute;right:0;top:calc(100% + 12px);width:max-content;max-width:260px;padding:9px 12px;border-radius:10px;background:var(--brown-dark);color:#fff;font:600 12px/1.35 Manrope,Arial,sans-serif;letter-spacing:0;box-shadow:0 10px 28px rgba(55,44,38,.2);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease,visibility .2s;pointer-events:none}
.appointment-button:hover:after,.appointment-button:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding-top:10px}
.footer-column h3{margin:0 0 10px;font:700 13px/1.2 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mint-deep)}
.footer-column a,.footer-column span{font-size:14px;color:#64736f;transition:color .2s,transform .2s}
.footer-column a:hover{color:var(--brown);transform:translateX(3px)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0 22px;border-top:1px solid rgba(57,118,111,.14);font-size:12px;color:#7d8985}
.footer-socials{display:flex;gap:18px;font-weight:700}.footer-socials a:hover{color:var(--mint-deep)}
@media(max-width:900px){.footer-main{grid-template-columns:1.5fr 1fr 1fr;gap:34px}.footer-brand img{width:270px}}
@media(max-width:700px){.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{padding-bottom:92px}}
@media(max-width:560px){.footer-main{grid-template-columns:1fr;gap:26px;padding-top:44px;text-align:center}.footer-brand{grid-column:auto}.footer-brand img{width:280px;margin:auto}.footer-tagline{margin:8px 0 0}.footer-column{align-items:center;padding-top:0}.footer-bottom{flex-direction:column;gap:8px;text-align:center}.footer-socials{justify-content:center}}
@media(max-width:560px){.services[id],.schedule-section[id],.about[id],.contact[id]{scroll-margin-top:66px}}
@media(max-width:560px){.schedule-section,.services,.about,.contact{padding-top:64px;padding-bottom:64px}}
.social-links a{transition:transform .22s ease,box-shadow .22s ease}.social-links a:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(57,118,111,.13)}
@keyframes title-shimmer{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes underline-draw{to{transform:rotate(-1deg) scaleX(1)}}
@keyframes orb-drift-one{to{transform:translate(-34px,24px) scale(1.08)}}@keyframes orb-drift-two{to{transform:translate(30px,-18px) scale(.92)}}
@keyframes card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes soft-pulse{0%{box-shadow:0 0 0 0 rgba(57,118,111,.35)}70%,100%{box-shadow:0 0 0 9px rgba(57,118,111,0)}}
@keyframes line-draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.photo-shell{transform:rotate(1deg)!important}}

/* v0.5 preview: clearer motion, shift colors and full calendar */
#schedule .section-heading h2{white-space:nowrap;font-size:clamp(31px,3.4vw,46px)}
.day-card.shift-am{background:#fff2c9;border-color:#f1d98e}.day-card.shift-pm{background:#dff3ec;border-color:#b7dfd1}
.day-card.shift-am span{color:#936c17}.day-card.shift-pm span{color:#39766f}
.photo-shell{transition:transform .14s ease-out,box-shadow .3s ease;animation:hero-breathe 5.2s ease-in-out infinite}
.floating-card{animation:card-float-strong 3.6s ease-in-out infinite}
.orb-one{animation:orb-drift-one-strong 7s ease-in-out infinite alternate}.orb-two{animation:orb-drift-two-strong 6s ease-in-out infinite alternate}
.service-card:hover{transform:translateY(-12px) rotate(-.4deg);box-shadow:0 24px 50px rgba(55,89,79,.16)}
.reveal{transform:translateY(38px) scale(.975);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1)}.reveal.visible{transform:none}
@keyframes hero-breathe{0%,100%{filter:saturate(1);box-shadow:var(--shadow)}50%{filter:saturate(1.08);box-shadow:0 30px 78px rgba(55,89,79,.2)}}
@keyframes card-float-strong{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(-.6deg)}}
@keyframes orb-drift-one-strong{to{transform:translate(-58px,38px) scale(1.14)}}@keyframes orb-drift-two-strong{to{transform:translate(46px,-32px) scale(.88)}}

.calendar-dialog{width:min(1020px,94vw);max-height:94vh;border:0;border-radius:30px;padding:0;background:transparent;box-shadow:0 32px 100px rgba(35,55,50,.25)}
.calendar-dialog::backdrop{background:rgba(42,57,53,.48);backdrop-filter:blur(5px)}
.calendar-modal{background:#fffaf3;border-radius:30px;padding:30px}
.calendar-modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.calendar-modal-top h2{font:700 clamp(28px,4vw,42px)/1.15 Comfortaa;color:var(--brown-dark);margin:0}
.calendar-close{width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:var(--brown-dark);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(55,89,79,.1)}
.calendar-controls{display:flex;justify-content:center;gap:8px;margin:18px 0}.calendar-controls button{border:1px solid #ddd8ce;background:#fff;border-radius:12px;padding:9px 14px;color:var(--brown-dark);font-weight:800;cursor:pointer}
.calendar-weekdays,.full-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.calendar-weekdays{margin-bottom:7px}.calendar-weekdays span{text-align:center;font-size:12px;font-weight:800;color:#788783}
.calendar-day{position:relative;min-height:90px;border:1px solid #eee7dc;border-radius:14px;padding:9px;background:#fff;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.calendar-day:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(55,89,79,.1)}
.calendar-day .date-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:800;color:var(--brown-dark)}.calendar-day small{display:block;margin-top:8px;font-size:10px;line-height:1.25;font-weight:800;color:#5e706a}
.calendar-day.outside{opacity:.32}.calendar-day.calendar-am{background:#fff2c9;border-color:#f0d787}.calendar-day.calendar-pm{background:#dff3ec;border-color:#acd8ca}
.calendar-day.holiday-state{background:#f8d9df;border-color:#ecb6c1}.calendar-day.holiday-orthodox{background:#eadff6;border-color:#cdb8e5}.calendar-day.is-today .date-number{background:var(--mint-deep);color:#fff}
.calendar-legend{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:18px;font-size:12px;font-weight:700;color:#697975}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:13px;height:13px;border-radius:4px}.legend-am{background:#f0d787}.legend-pm{background:#acd8ca}.legend-state{background:#ecb6c1}.legend-orthodox{background:#cdb8e5}
.calendar-source{margin:12px 0 0;font-size:11px;color:#7e8a87}
@media(max-width:700px){#schedule .section-heading h2{font-size:30px}.calendar-modal{padding:20px 14px}.calendar-dialog{width:96vw}.calendar-day{min-height:68px;padding:6px}.calendar-day small{font-size:8px;margin-top:5px}.calendar-day .date-number{width:23px;height:23px;font-size:12px}.calendar-weekdays,.full-calendar{gap:4px}.calendar-legend{gap:8px 14px}}
@media(prefers-reduced-motion:reduce){.photo-shell{animation:none!important}}


/* v0.6 Tips section */
.tips-section{padding:18px 0 12px;position:relative;overflow:hidden}
.tips-section::before,.tips-section::after{content:"";position:absolute;border-radius:50%;background:rgba(228,203,189,.6);z-index:0}
.tips-section::before{width:180px;height:180px;left:-90px;bottom:40px}
.tips-section::after{width:250px;height:250px;right:-120px;top:-60px;background:rgba(214,230,228,.78)}
.tips-section .wrap{position:relative;z-index:1}
.tips-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.9fr);gap:42px;align-items:start;margin-bottom:28px}
.tips-heading h2{font:700 clamp(34px,5.4vw,60px)/1.08 Comfortaa;color:var(--brown-dark);margin:10px 0 0}
.tips-heading-copy{padding-top:14px}.tips-heading-copy p{font-size:18px;line-height:1.55;color:#6c7e79;margin:0 0 16px}.tips-all-link{font-weight:800;color:#3d7d74}
.tips-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tip-card{display:flex;flex-direction:column;background:#fff;border-radius:34px;overflow:hidden;box-shadow:0 10px 0 rgba(80,79,69,.05),0 18px 34px rgba(48,63,59,.08);border:1px solid rgba(255,255,255,.85);min-height:570px}
.tip-card.mint .tip-visual{background:#dcebe7}.tip-card.blue .tip-visual{background:#dde8ee}.tip-card.lilac .tip-visual{background:#eadfeb}
.tip-visual{height:225px;position:relative;padding:26px}.tip-card-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 26px}
.tip-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#a06f57;margin-bottom:10px}.tip-meta time{font-weight:600;color:#94a09e}
.tip-card h3{font:700 clamp(24px,2.2vw,30px)/1.35 Comfortaa;color:var(--brown-dark);margin:0 0 12px}
.tip-card p{font-size:16px;line-height:1.55;color:#74847f;margin:0}
.tip-link{margin-top:auto;align-self:flex-start;background:none;border:0;padding:0;color:#3b7e76;font:800 24px/1.2 Manrope;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.tip-link span{font-size:18px}
.tips-note{text-align:center;font-size:13px;color:#96a2a0;margin:18px 0 0}
.tips-archive{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-top:28px;padding:22px 24px;border-radius:28px;background:rgba(255,255,255,.75);border:1px solid rgba(219,229,226,.9);box-shadow:0 18px 34px rgba(48,63,59,.05)}
.tips-archive h3{font:700 28px/1.2 Comfortaa;color:var(--brown-dark);margin:6px 0 10px}.tips-archive p{margin:0;color:#74847f;max-width:640px}
.archive-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:430px}.archive-pills span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #dfe7e4;color:#608379;font-weight:700;font-size:14px}
.weather-cloud{position:absolute;left:28px;bottom:24px;width:112px;height:40px;background:#f4f5f4;border-radius:40px}.weather-cloud::before,.weather-cloud::after{content:"";position:absolute;background:#f4f5f4;border-radius:50%}.weather-cloud::before{width:48px;height:48px;left:14px;top:-22px}.weather-cloud::after{width:62px;height:62px;right:14px;top:-34px}
.weather-sun{position:absolute;right:30px;top:30px;width:60px;height:60px;border-radius:50%;background:#eec16d}
.thermometer{position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);width:46px;height:108px;border:6px solid #3f8179;border-radius:28px}.thermometer::before{content:"";position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);width:46px;height:46px;border:6px solid #3f8179;border-radius:50%;background:#dcebe7}.thermometer span{position:absolute;left:50%;top:18px;transform:translateX(-50%);width:8px;height:54px;border-radius:999px;background:#3f8179}
.temp-badge{position:absolute;right:28px;bottom:24px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.75);font-weight:800;color:#a06f57}
.growth-frame,.quiz-frame{position:absolute;left:28px;right:28px;top:28px;bottom:28px;background:#f7f7f7;border-radius:22px}
.growth-label{position:absolute;left:18px;top:14px;text-transform:lowercase;font-weight:800;color:#7d6458}
.growth-bars{position:absolute;left:34px;right:34px;bottom:24px;display:flex;align-items:flex-end;gap:18px}.growth-bars i{display:block;flex:1;border-radius:10px 10px 8px 8px;background:#adcfbf}.growth-bars i:nth-child(1){height:36px}.growth-bars i:nth-child(2){height:72px}.growth-bars i:nth-child(3){height:62px}.growth-bars i:nth-child(4){height:104px}.growth-bars i:nth-child(5){height:132px}
.growth-line{position:absolute;left:26px;right:22px;top:18px;bottom:12px;color:#9b6b53;overflow:visible}
.quiz-frame{padding:18px 20px}.quiz-tag{font-size:12px;font-weight:800;letter-spacing:.05em;color:#9c75af;margin-bottom:12px}.quiz-question{font:700 20px/1.4 Comfortaa;color:var(--brown-dark);max-width:240px}.quiz-line{height:8px;border-radius:999px;background:#d7c6e1;margin:18px 0 16px;position:relative}.quiz-line::before{content:"";position:absolute;left:0;top:0;height:100%;width:62%;background:#af8fc2;border-radius:inherit}
.quiz-buttons{display:flex;gap:16px}.quiz-buttons span{min-width:74px;text-align:center;padding:8px 18px;border-radius:999px;font-weight:800}.quiz-buttons span:first-child{background:#dcedea;color:#4b857b}.quiz-buttons span:last-child{background:#ead7d0;color:#a06f57}
.quiz-badge{position:absolute;right:24px;top:20px;width:48px;height:48px;border-radius:50%;background:#9b6b53;color:#fff;display:grid;place-items:center;font:700 30px/1 Manrope}
.tip-dialog{width:min(940px,94vw);max-height:94vh;border:0;padding:0;background:transparent}
.tip-dialog::backdrop{background:rgba(42,57,53,.52);backdrop-filter:blur(5px)}
.tip-modal{position:relative;background:#fffaf3;border-radius:30px;padding:28px 28px 22px;box-shadow:0 32px 100px rgba(35,55,50,.25);overflow:auto;max-height:94vh}
.tip-close{position:absolute;right:18px;top:18px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;box-shadow:0 10px 24px rgba(55,89,79,.1);font-size:32px;line-height:1;color:var(--brown-dark);cursor:pointer}
.tip-modal-head{padding-right:56px;margin-bottom:18px}.tip-modal-head h2{font:700 clamp(26px,3.6vw,40px)/1.2 Comfortaa;color:var(--brown-dark);margin:8px 0 8px}.tip-modal-head p{margin:0;color:#71847e;font-size:17px;line-height:1.6}
.tip-modal-body{display:grid;gap:18px}.tip-modal-body .tip-block{padding:18px 20px;background:#fff;border:1px solid #ece7dd;border-radius:20px}.tip-modal-body h3{font:700 22px/1.3 Comfortaa;color:var(--brown-dark);margin:0 0 10px}.tip-modal-body p,.tip-modal-body li{font-size:16px;line-height:1.65;color:#677975}.tip-modal-body ul{margin:0;padding-left:18px}.tip-modal-body .tip-callout{background:#eef7f4;border-color:#d6ebe3}.tip-modal-body .info-rows{display:grid;gap:12px}.tip-modal-body .info-row{display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:center}.tip-modal-body .bar{height:14px;border-radius:999px;background:#eef1ef;overflow:hidden}.tip-modal-body .bar i{display:block;height:100%;border-radius:inherit;background:#9dcab8}.tip-modal-body .bar.alt i{background:#e1c17b}.tip-modal-body .bar.rose i{background:#d9adbb}
.tip-quiz-area{padding:10px 0 4px}.quiz-progress{display:grid;gap:10px;margin-bottom:16px}.quiz-progress span{font-size:14px;font-weight:800;color:#7b8a87}.quiz-progress-bar{height:10px;background:#e7e4db;border-radius:999px;overflow:hidden}.quiz-progress-bar i{display:block;height:100%;width:33.333%;background:#80b7a6;border-radius:inherit;transition:width .25s ease}
.tip-quiz-area h3{font:700 24px/1.35 Comfortaa;color:var(--brown-dark);margin:0 0 16px}.quiz-options{display:grid;gap:12px}.quiz-option{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;text-align:left;padding:16px 18px;border-radius:18px;border:1px solid #e6e2d8;background:#fff;color:#5b6b67;font:700 16px/1.4 Manrope;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.quiz-option:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(55,89,79,.08);border-color:#cfe2db}.quiz-option.is-correct{border-color:#92c7b6;background:#eef7f3}.quiz-option.is-wrong{border-color:#e0c1c1;background:#fbefef}
.quiz-feedback{min-height:28px;margin-top:14px;font-size:15px;font-weight:700;color:#6d7c78}.quiz-result{margin-top:20px;padding:18px 20px;border-radius:20px;background:#eef7f4;color:#4d635e}.quiz-result h4{margin:0 0 8px;font:800 20px/1.3 Manrope;color:var(--brown-dark)}.quiz-result p{margin:0;font-size:16px;line-height:1.6}
.tip-disclaimer{margin:18px 0 0;font-size:12px;color:#92a09d;text-align:center}
@media(max-width:1120px){.tips-grid{grid-template-columns:1fr 1fr}.tip-card{min-height:530px}.tips-archive{flex-direction:column}.archive-pills{justify-content:flex-start;max-width:none}}
@media(max-width:760px){.tips-heading{grid-template-columns:1fr;gap:16px}.tips-heading h2{font-size:40px}.tips-grid{grid-template-columns:1fr}.tip-card{min-height:auto}.tip-visual{height:220px}.tip-card-body{padding:20px 20px 24px}.tip-card h3{font-size:26px}.tips-archive{padding:18px 18px 20px}.tips-archive h3{font-size:24px}.tip-modal{padding:22px 16px 18px}.tip-modal-body .info-row{grid-template-columns:1fr}.tip-close{right:12px;top:12px}}
