/* Edayathu v11: carved teak, terracotta, old brass and cream plaster. */
:root{--primary-color:#835a2c;--bg-dark:#f9f3e8;--bg-darker:#efe5d3;--text-primary:#3c2a1f;--text-secondary:#6c5948;--glass-bg:#fcf7ee;--glass-border:#d7c6ab;--h-paper:#f6efe2;--h-cream:#eadac0;--h-teak:#362316;--h-red:#8d432f;--h-brass:#b99251;--h-line:#d4bea1;--h-serif:'Gelasio','Noto Serif Malayalam',Georgia,serif;--h-sans:'DM Sans','Noto Serif Malayalam',Arial,sans-serif}
html{scroll-padding-top:100px;scroll-behavior:smooth}
.heritage-site{background:var(--h-paper);font-family:var(--h-sans);color:var(--text-primary);overflow-x:clip;line-height:1.65}
.heritage-site *{min-width:0}
.heritage-site.heritage-dialog-open{overflow:hidden}
.heritage-site h1,.heritage-site h2,.heritage-site h3,.heritage-site h4{font-family:var(--h-serif);font-weight:400;text-shadow:none;overflow-wrap:anywhere}
.heritage-site button,.heritage-site input,.heritage-site select,.heritage-site textarea{font-family:var(--h-sans)}
.heritage-site button,.heritage-site a{touch-action:manipulation}
.heritage-site a:focus-visible,.heritage-site button:focus-visible,.heritage-site input:focus-visible,.heritage-site select:focus-visible,.heritage-site textarea:focus-visible{outline:3px solid var(--h-red);outline-offset:4px}
.heritage-site input,.heritage-site select,.heritage-site textarea{font-size:16px!important;max-width:100%;color:var(--text-primary);background:#fffcf6;border-color:var(--h-line)}
.heritage-site input::placeholder,.heritage-site textarea::placeholder{color:#7d6c5a;opacity:1}
.heritage-site .container{max-width:1220px;padding-inline:32px}
.heritage-site .site-nav{background:var(--h-teak);backdrop-filter:none;border-bottom:1px solid #876a47;padding:17px clamp(20px,4.3vw,72px);gap:30px;min-height:86px;z-index:1300;box-shadow:none}
.heritage-site .site-nav.scrolled{background:#302015;box-shadow:0 4px 16px #26180f25}
.heritage-site .nav-brand{font:32px/1 var(--h-serif);letter-spacing:-1px;color:#f4e6cc}
.brand-place{display:block;font:9px/1.5 var(--h-sans);letter-spacing:2px;margin-top:7px;color:#d0b58c}
.heritage-site .nav-links{gap:26px;align-items:center;flex-wrap:wrap}
.heritage-site .nav-link,.heritage-site .lang-toggle{font-size:12px;letter-spacing:.4px;color:#e9d7b6;min-height:44px;padding:9px 0;display:inline-flex;align-items:center;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.heritage-site .lang-toggle{border:0;border-bottom:1px solid #8f7755;border-radius:0;background:none;padding:8px 4px}
.heritage-site .nav-cta{color:#fff1d5;background:transparent;border:1px solid #b79564;border-radius:1px;min-height:44px;padding:11px 18px;display:inline-flex;justify-content:center;align-items:center;font-size:12px;letter-spacing:.3px;white-space:normal;overflow-wrap:anywhere;text-align:center}
.heritage-site .nav-cta:hover{background:#785438;color:#fff4dc}
.heritage-menu{display:none;color:#f5e6ca;background:transparent;border:1px solid #a6875a;padding:9px 15px;min-height:44px;font-size:13px}
.skip-link{position:fixed;left:16px;top:-80px;z-index:5000;padding:12px 20px;background:white;color:#302015}.skip-link:focus{top:10px}
.heritage-site .sr-only{position:absolute;display:block;width:1px;height:1px;padding:0;margin:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;animation:none;transform:none}
/* The reference image remains intact: the house itself is the first view. */
.house-hero{position:relative;isolation:isolate;min-height:650px;height:min(790px,calc(100svh - 86px));overflow:hidden;color:#fff3dd;background:#3e2d1d}
.house-scene{position:absolute;inset:0;z-index:-3;overflow:hidden;transform:translateZ(0)}
.house-scene img{width:100%;height:100%;object-fit:cover;object-position:50% 52%;display:block;transform-origin:50% 60%;animation:house-breath 24s ease-in-out infinite alternate;transition:transform .9s ease}
.house-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#20170db8 0%,#21180d4d 35%,transparent 62%),linear-gradient(0deg,#21170ce8 0%,#20180d33 33%,transparent 65%)}
.house-welcome{position:absolute;left:clamp(28px,6.3vw,96px);bottom:111px;max-width:440px;animation:welcome-in 1.2s both}
.home-malayalam{font-family:'Noto Serif Malayalam',Georgia,serif;font-size:19px;line-height:1.8;margin:0 0 17px;color:#e6cda6}
.house-welcome h1{font:clamp(46px,5.2vw,77px)/1.06 var(--h-serif);letter-spacing:-2.5px;color:#fff5e4;overflow-wrap:normal;margin:0 0 21px}
.house-welcome h1 em{font-weight:400;color:#efd2a6}
html[lang="ml"] .house-welcome h1{font-family:'Noto Serif Malayalam',Georgia,serif;font-size:clamp(29px,4vw,49px);line-height:1.65;letter-spacing:0;overflow-wrap:anywhere}
html[lang="ml"] .house-welcome h1 em{font-style:normal}
.house-intro{font:15px/1.8 var(--h-sans);max-width:30ch;color:#f0dfc1;white-space:pre-line;margin:0 0 28px}
.heritage-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:13px 23px;border:1px solid #80582d;border-radius:1px;background:transparent;text-decoration:none;color:#5d3b23;font:13px/1.5 var(--h-sans);cursor:pointer;transition:background .25s,color .25s,transform .25s}
.heritage-button:hover{background:#694129;color:#fff1d6;transform:translateY(-2px)}
.light-button{border-color:#e2c499;background:#f0dfbf;color:#3c2516}.light-button:hover{background:#fff1d4;color:#382313}
.house-caption{position:absolute;bottom:0;left:clamp(28px,6.3vw,96px);right:clamp(28px,6.3vw,96px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ddc09566;padding:18px 0;color:#e8d4b1;font:10px/1.7 var(--h-sans);letter-spacing:1.3px}
.house-caption button{background:none;border:0;padding:8px 0;color:#f6e6c8;font:11px/1.5 var(--h-sans);min-height:44px;cursor:pointer;white-space:nowrap}
.heritage-main{background:var(--h-paper)}
.home-today{border-bottom:1px solid var(--h-line);min-height:52px;padding:11px 28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 35px;color:var(--text-secondary)}
.heritage-home .saint-strip,.heritage-home .today-strip{font-size:12px;background:none;border:0;border-radius:0;max-width:none;padding:4px 0;margin:0;text-align:center}
.heritage-home .saint-strip .saint-name{color:var(--text-primary)}
.heritage-home .today-lead{color:var(--h-red)}
.heritage-home .today-strip{line-height:1.6}.heritage-home .today-cta{display:inline;margin-left:10px}
.heritage-section{max-width:1220px;margin:auto;padding:80px 55px}
.eyebrow{font:10px/1.7 var(--h-sans);letter-spacing:2px;color:var(--h-red);margin:0 0 18px;text-transform:uppercase}
.chapter-number{font:italic 17px/1.5 var(--h-serif);color:#997347;display:block;margin-bottom:28px}
.heritage-home h2{font:44px/1.17 var(--h-serif);letter-spacing:-1.4px;color:var(--h-teak);margin:0 0 22px}
.verandah-intro{display:grid;grid-template-columns:.55fr 1.4fr 1.6fr;gap:42px;align-items:start}
.editorial-intro{font:italic 23px/1.55 var(--h-serif);color:#826345;max-width:25ch}
.story-copy>p{font:15px/1.85 var(--h-sans);margin:0 0 16px;color:var(--text-secondary)}
.family-history{margin-top:22px;max-width:100%}.family-history summary{cursor:pointer;padding:10px 0;min-height:44px;color:var(--h-red);font:12px/1.7 var(--h-sans);border-bottom:1px solid #c6aa87;list-style-position:inside}.family-history[open] summary{margin-bottom:20px}.family-history p{font:14px/1.8 var(--h-sans);color:var(--text-secondary);margin-bottom:14px}
.family-rooms{border-top:1px solid var(--h-line);padding-top:48px;padding-bottom:60px}.rooms-title{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:25px}.rooms-title h2{font-size:32px;margin:0}.rooms-title .eyebrow{margin-bottom:5px}
.room-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--h-line);border-bottom:1px solid var(--h-line)}
.room-links>a{display:flex;gap:16px;padding:25px 21px;text-decoration:none;color:var(--h-teak);border-right:1px solid var(--h-line);transition:background .25s}.room-links>a:first-child{padding-left:0}.room-links>a:last-child{border:0;padding-right:0}.room-links>a:hover{background:#e9dac066}
.room-no{font:italic 16px/1.5 var(--h-serif);color:#a0794c}.room-links h3{font:22px/1.25 var(--h-serif);margin:0 0 8px}.room-links p{font:12px/1.75 var(--h-sans);color:var(--text-secondary);margin:0;max-width:24ch}.room-arrow{margin-left:auto;align-self:center;color:var(--h-red);font-size:24px;transition:transform .25s}.room-links>a:hover .room-arrow{transform:translate(2px,-2px)}
.private-note{font:11px/1.8 var(--h-sans);color:var(--text-secondary);margin-top:18px}
.album-section{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;align-items:center;padding-top:40px;padding-bottom:85px}.album-copy>p:not(.eyebrow){font:15px/1.8 var(--h-sans);color:var(--text-secondary);max-width:29ch;margin:0 0 20px}.text-link{display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid #a17a4e;font:12px/1.5 var(--h-sans);color:var(--h-red);text-decoration:none;min-height:44px}
.album-frame{margin:0;padding:13px 13px 21px;background:#fffaf0;box-shadow:0 9px 25px #432e161c;border:1px solid #d7c6aa;transform:rotate(1.4deg);transition:transform .45s}.album-frame:hover{transform:rotate(0)}.album-frame img{width:100%;height:340px;object-fit:cover;display:block;background:#e2d3b9}.album-frame figcaption{font:italic 19px/1.5 var(--h-serif);color:#826445;margin:14px 10px 0}
.album-controls{display:flex;gap:18px;align-items:center;margin-top:28px}.album-controls button{width:44px;height:44px;border:1px solid var(--h-line);background:transparent;font-size:21px;color:var(--h-teak);cursor:pointer}.album-controls button:hover{background:#e8d7bd}.album-controls span{font:11px/1.5 var(--h-sans);letter-spacing:1.5px;color:var(--text-secondary)}
.remembrance-section{border-top:1px solid var(--h-line);display:grid;grid-template-columns:1.05fr 1.15fr;gap:90px;align-items:center;padding-block:75px}.prayer-corner{height:420px;position:relative;border:1px solid #ab8560;background:radial-gradient(ellipse at 50% 65%,#8d6033,#523322 58%,#322217);box-shadow:inset 0 0 0 9px #5a3925,inset 0 0 0 10px #c0975866;overflow:hidden}.prayer-cross{position:absolute;left:50%;top:43px;transform:translateX(-50%);font:90px/1 Georgia,serif;color:#e3c494;text-shadow:3px 5px 4px #190f0b66}.prayer-shelf{position:absolute;bottom:79px;height:11px;left:20%;right:20%;background:linear-gradient(#b98d52,#674726);box-shadow:0 6px 0 #37271b,0 17px 17px #1e130b77}
.heritage-home .candle{position:absolute;left:50%;bottom:90px;transform:translateX(-50%);width:90px;height:137px;padding:0;border:0;background:none;cursor:pointer;z-index:2}.heritage-home .candle:hover{transform:translateX(-50%)}.wax{position:absolute;bottom:0;left:27px;width:36px;height:92px;border-radius:3px;background:linear-gradient(90deg,#beab84,#fff2ce 55%,#c7b189);box-shadow:3px 5px 12px #30201288}.wax::before{content:'';position:absolute;left:17px;top:-8px;height:10px;width:2px;background:#2b2116}.wax-flame{position:absolute;left:36px;bottom:99px;height:31px;width:18px;opacity:0;background:linear-gradient(#eeac3e,#fff6ce);border-radius:70% 35% 60% 45%;box-shadow:0 0 18px #e9ab5299;transform-origin:bottom}.candle.lit .wax-flame{opacity:1;animation:hearth-flame 1.5s ease-in-out infinite alternate}.prayer-halo{position:absolute;inset:40px 15%;background:radial-gradient(ellipse at 50% 63%,#ffbe6844,transparent 62%);opacity:0;transition:opacity 1s}.prayer-corner:has(.candle.lit) .prayer-halo{opacity:1}
.remembrance-copy>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--text-secondary);margin:0 0 22px}.remembrance-copy .candle-count,.remembrance-copy .candle-done{font-size:12px!important;margin:15px 0!important}.heritage-home .verse-section{margin:25px 0 0;padding:23px 0 0;border-top:1px solid var(--h-line);text-align:left}.heritage-home .verse-section blockquote{border:0;padding:0;margin:0}.heritage-home #verse-text{font:italic 18px/1.7 var(--h-serif);color:#785c3c;text-shadow:none}.heritage-home #verse-ref{font:10px/1.5 var(--h-sans);letter-spacing:1px;color:#715135;display:block;margin-top:9px}
.home-invitation{background:#4d3020;color:#eddbba;text-align:center;padding:65px 25px 60px;border-top:5px solid #815432}.home-invitation h2{color:#fff0d4;font-size:42px}.home-invitation>p:last-child{font-size:12px;max-width:45ch;margin:23px auto 0;color:#d0b894}.home-invitation .home-malayalam{color:#dbc29d}.heritage-site footer{background:#2d2017;border:0;color:#c7b190;padding:36px 24px}.heritage-footer{text-align:center}.footer-brand{font:32px/1 var(--h-serif);color:#f0dfc1;text-decoration:none;letter-spacing:-1px}.heritage-footer>p{font-size:11px;margin:15px 0 20px}.heritage-site .footer-links{gap:24px;flex-wrap:wrap;justify-content:center}.heritage-site .footer-links a,.heritage-site footer a{color:#dbc49c;font-size:12px}.heritage-footer .copyright{margin:24px 0 0;font-size:10px;color:#baa17d}
/* Shared members, forms, administration, and dialogs retain their existing IDs. */
.heritage-site .dynamic-bg,.heritage-site .growing-tree,.heritage-site .dust,.heritage-site .c-angel{display:none!important}
.heritage-site .hero:not(.house-hero){padding:58px 30px 43px;margin:0 0 35px;background:linear-gradient(90deg,#f6efe2 39%,#f6efe2dc 68%,#f6efe277),url('images/tharavadu-entrance-2-1152.webp') right 47%/auto 190% no-repeat;text-align:left;border-bottom:1px solid var(--h-line)}
.heritage-site .family-name{font:48px/1.2 var(--h-serif);letter-spacing:-1.5px;color:var(--h-teak);background:none;-webkit-text-fill-color:currentColor;animation:none;max-width:900px;margin:0 auto;overflow-wrap:anywhere}.heritage-site .hero .divider{background:#a37b47;width:70px;margin:22px max(0px,calc((100% - 900px)/2)) 15px;height:2px}.heritage-site .hero .contact-email{display:block;margin:0 auto;max-width:900px;color:#795d3d;font-size:14px;letter-spacing:.3px;text-shadow:none}
.heritage-site .glass-panel{background:#fffaf1;border:1px solid var(--h-line);border-radius:3px;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 7px 24px #49331b09;padding:35px;margin-bottom:35px}
.heritage-site .glass-panel h2,.heritage-site .tree-section h2,.heritage-site .events-section h2{font:33px/1.25 var(--h-serif);color:var(--h-teak);text-shadow:none;letter-spacing:-.6px}.heritage-site .subtitle,.heritage-site .auth-text,.heritage-site .auth-smallprint{color:var(--text-secondary);text-shadow:none}
.heritage-site .auth-panel{max-width:650px}.heritage-site .auth-card{background:transparent;border:0;box-shadow:none}.heritage-site .auth-form{padding-top:20px}.heritage-site .auth-tabs{border-bottom:1px solid var(--h-line)}.heritage-site .auth-tab{color:var(--text-secondary)}.heritage-site .auth-tab.active{color:var(--h-red);border-bottom-color:var(--h-red)}.heritage-site .big-input{border-radius:2px;min-height:50px;background:#fffcf6;border:1px solid #c3aa85;color:#38271a;padding:12px 14px;box-shadow:none}.heritage-site .big-label{font-size:15px;color:var(--text-primary)}
.heritage-site .gold-btn,.heritage-site .tree-ctl,.heritage-site .cal-nav,.heritage-site .dir-row-btns button{background:#f1e3cb;color:#654427;border:1px solid #ac895c;border-radius:2px;min-height:44px;font-size:13px;letter-spacing:0;padding:10px 17px;box-shadow:none;white-space:normal;overflow-wrap:anywhere}.heritage-site .gold-btn::before,.heritage-site .gold-btn::after{display:none}.heritage-site .gold-btn:hover,.heritage-site .tree-ctl:hover{background:#69472c;color:#fff2d7;transform:none;box-shadow:none}.heritage-site .gold-btn-lg{background:#64422a;color:#fff0d2;min-height:50px}.heritage-site .auth-link{color:#804f2c;font-size:13px;min-height:44px}
.heritage-site :is(.dash-tile,.event-card,.couple-card,.person-card,.news-item,.dir-card,.calendar-day,.cal-day,.story-memory,.story-voice,.choice-card,.admin-tools){background:#f5ecdb;color:var(--text-primary);border-color:var(--h-line);box-shadow:none;backdrop-filter:none;border-radius:3px}.heritage-site .dash-tile h3{font:20px/1.4 var(--h-serif);color:#805430}.heritage-site .dash-body,.heritage-site .bio-text,.heritage-site .person-name{color:var(--text-primary)}.heritage-site .dash-act{border-radius:2px;background:#f0e1c7;border-color:#c4a376;color:#694426;font-size:13px}.heritage-site .dash-act:hover{background:#e3cda9}.heritage-site .ritual-box{border-color:var(--h-line)}
.heritage-site .tree-canvas{background-color:#eee1c9;background-image:radial-gradient(#b3a08666 .7px,transparent .7px);background-size:18px 18px;border-radius:3px}.heritage-site .tree-card{background:#fff9ee;border:1px solid #b89561;border-radius:4px;color:#49321f}.heritage-site .tree-card .person-name{color:#39281b;font-family:var(--h-serif);text-shadow:none}.heritage-site .tree-card .role-tag{color:#85643f}.heritage-site .half-avatar{border-color:#b7945c;box-shadow:none;background:#e4d4b6}.heritage-site .couple-divider{background:#cbb18a}.heritage-site .branch-chevron{background:#66432a;color:#fff1d2;border-color:#b79561}.heritage-site .tree-link{stroke:#9d7746}.heritage-site .tree-link.lineage{stroke:#6b482a;filter:none}.heritage-site .tree-search{width:185px;min-height:44px;border:1px solid #b69a71;border-radius:2px;background:#fffaf0;color:#3c2a1b}.heritage-site .tree-search:focus{width:210px}
.heritage-site .modal-content{background:#fff9ed;color:#3c2a1b;border:1px solid #b39365;border-radius:4px;box-shadow:0 25px 80px #190f0966}.heritage-site .modal.hidden,.heritage-site .lightbox.hidden{visibility:hidden}.heritage-site .close-btn{color:#70502e;min-width:44px;min-height:44px}.heritage-site .lightbox{background:#20160ff2}.heritage-site .lightbox-close,.heritage-site .lightbox-arrow,.heritage-site .lightbox-counter{color:#f3dfbb}.heritage-site .lightbox-arrow{background:#4c3524;border-color:#b9945e}
.heritage-site .member-nav{background:#362417;border:1px solid #a18053;border-radius:4px;backdrop-filter:none;color:#ead8b8;box-shadow:0 5px 25px #30201244}.heritage-site .member-nav button{color:#f0dfc4;border-radius:2px;min-height:54px}.heritage-site .member-nav .mn-label{color:#eddbbc;font-size:11px}.heritage-site .member-nav button[aria-current="true"]{background:#775334}.heritage-site .member-nav button:hover{background:#72502f}.heritage-site .member-nav .mn-ico{font-size:20px}.heritage-site .details-panel{max-width:760px}.heritage-site .details-container{padding-bottom:30px}.heritage-site .choice-card:has(input:checked){background:#e8d6b6;border-color:#8b673c}.heritage-site .nf-wrap p{color:var(--text-secondary)}.heritage-site .nf-code{background:none;-webkit-text-fill-color:#8d6237;color:#8d6237}
.heritage-site .dir-error{color:#a32f22}.heritage-site .info-value,.heritage-site .big-label .opt{color:#705740}.heritage-site .admin-tools{padding:22px}.heritage-site .admin-tools summary{color:#725134}.heritage-site .lang-toggle:hover{background:#68492e}.heritage-site .js .reveal{opacity:1;transform:none}
.motion-paused .house-scene img,.motion-paused .wax-flame{animation-play-state:paused!important}.motion-paused .album-frame{transition:none}.is-entering .house-scene img{animation:none;transform:scale(1.07)}
@keyframes house-breath{from{transform:scale(1)}to{transform:scale(1.035)}}@keyframes welcome-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes hearth-flame{from{transform:rotate(-3deg) scale(.97,1.03)}to{transform:rotate(3deg) scale(1.04,.97)}}
@media(min-width:1800px){.house-hero{height:900px;max-height:none}}
@media(max-width:1000px){.heritage-site .nav-links{gap:17px}.heritage-site .site-nav{gap:20px}.heritage-section{padding-inline:35px}.verandah-intro{grid-template-columns:1fr 1.3fr;gap:25px}.section-margin{grid-column:1/-1;display:flex;gap:18px;align-items:center}.section-margin .chapter-number,.section-margin .eyebrow{margin:0}.album-section{gap:45px}.room-links h3{font-size:21px}.room-links>a{padding-inline:15px;gap:12px}.remembrance-section{gap:45px}.house-welcome{left:40px}.house-caption{left:40px;right:40px}}
@media(max-width:760px){html{scroll-padding-top:90px}.heritage-site .site-nav{padding:15px 20px;min-height:79px;gap:15px;flex-wrap:wrap}.heritage-site .nav-brand{font-size:28px}.heritage-site .heritage-menu{display:block;margin-left:auto}.heritage-site .nav-links{display:none;width:100%;gap:8px;align-items:stretch;padding-top:14px;border-top:1px solid #9b7a4f;flex-direction:column}.heritage-site .site-nav.menu-open .nav-links{display:flex}.heritage-site .nav-link,.heritage-site .lang-toggle{font-size:14px;min-height:44px;padding:10px 8px;max-width:100%}.heritage-site .nav-cta{min-height:46px}.heritage-site .site-nav .nav-link[href="#about"]{display:inline-flex}.heritage-site .container{padding-inline:20px}.house-hero{height:740px;min-height:0;max-height:none}.house-scene{height:400px;inset:0 0 auto}.house-scene img{object-position:50% 50%;object-fit:cover}.house-shade{background:linear-gradient(0deg,#332316 0%,#332316 44%,#332316cc 53%,#33231600 80%)}.house-welcome{bottom:91px;left:27px;right:27px;max-width:none}.house-welcome h1{font-size:52px;letter-spacing:-1.7px;margin-bottom:18px}.home-malayalam{font-size:17px;margin-bottom:13px}.house-intro{font-size:14px;max-width:34ch;margin-bottom:23px}.house-caption{left:27px;right:27px;padding:11px 0;font-size:8px;letter-spacing:.8px;gap:12px}.house-caption>span{max-width:23ch}.house-caption button{font-size:10px}.heritage-section{padding:45px 25px}.verandah-intro{grid-template-columns:1fr;gap:22px}.story-heading h2{margin-bottom:15px}.editorial-intro{font-size:24px;max-width:28ch}.story-copy{max-width:55ch}.heritage-home h2{font-size:35px}.rooms-title{display:block}.rooms-title .eyebrow{margin-bottom:14px}.room-links{grid-template-columns:1fr}.room-links>a,.room-links>a:first-child,.room-links>a:last-child{padding:22px 0;border-right:0;border-bottom:1px solid var(--h-line);gap:18px}.room-links>a:last-child{border-bottom:0}.room-links h3{font-size:25px}.room-links p{max-width:none}.album-section{grid-template-columns:1fr;gap:27px}.album-copy .chapter-number{margin-bottom:14px}.album-copy>p:not(.eyebrow){max-width:40ch}.album-frame{max-width:100%;transform:rotate(.8deg)}.album-frame img{height:270px}.album-frame figcaption{font-size:17px}.album-controls{margin-top:18px}.remembrance-section{grid-template-columns:1fr;gap:34px}.prayer-corner{height:320px;max-width:440px;width:100%;margin:auto}.prayer-cross{top:26px;font-size:75px}.prayer-shelf{bottom:59px}.heritage-home .candle{bottom:70px}.remembrance-copy .chapter-number{margin-bottom:14px}.home-invitation{padding:48px 25px}.home-invitation h2{font-size:34px}.heritage-site .footer-links{gap:12px 22px}.heritage-site .footer-links a{min-height:40px;display:inline-flex;align-items:center}.heritage-site .hero:not(.house-hero){padding:35px 24px 31px;margin-bottom:25px;background:linear-gradient(90deg,#f6efe2 20%,#f6efe2e8 60%,#f6efe2bb),url('images/tharavadu-entrance-2-1152.webp') center/cover}.heritage-site .family-name{font-size:36px;letter-spacing:-1px}.heritage-site .hero .divider{margin-left:0}.heritage-site .hero .contact-email{font-size:13px;line-height:1.8}.heritage-site .glass-panel{padding:24px 20px;margin-bottom:27px}.heritage-site .glass-panel h2,.heritage-site .tree-section h2,.heritage-site .events-section h2{font-size:27px}.heritage-site .auth-card{padding:0}.heritage-site .auth-text{font-size:14px}.heritage-site .member-nav{left:8px;right:8px;width:auto;max-width:calc(100% - 16px);transform:none;bottom:max(8px,env(safe-area-inset-bottom));padding:4px}.heritage-site .member-nav button{padding:6px 2px;min-width:0;flex:1}.heritage-site .member-nav .mn-label{font-size:10px;letter-spacing:0;overflow-wrap:anywhere;text-align:center}.heritage-site .tree-controls{flex-wrap:wrap;gap:8px}.heritage-site .tree-controls .tree-ctl{font-size:12px;padding:9px 12px}.heritage-site .tree-search,.heritage-site .tree-search:focus{width:100%;min-width:0}.heritage-site .close-btn{min-width:44px;min-height:44px}.heritage-site .modal-content{max-height:85svh;overflow-y:auto}.heritage-site .dashboard-panel{padding:24px 18px}.heritage-site .privacy-panel{padding-inline:22px}}

.site-nav .nav-brand{position:relative;padding-left:58px}
.site-nav .nav-brand::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:48px;height:48px;background:url('/images/family-logo.png') center/contain no-repeat}
@media(max-width:760px){.site-nav .nav-brand{padding-left:45px}.site-nav .nav-brand::before{width:38px;height:38px}}
.tree-mobile-list{display:none}
@media(max-width:760px){.heritage-site .tree-mobile-list{display:block;margin:0 0 14px;border:1px solid #b69a71;background:#fffaf0;color:#3c2a1b}.heritage-site .tree-mobile-list summary{min-height:44px;display:flex;align-items:center;padding:8px 12px;cursor:pointer;font:600 14px/1.4 var(--h-sans)}.heritage-site .tree-mobile-list>p{margin:0;padding:0 12px 10px;font-size:13px;color:#6e5539}.heritage-site .tree-mobile-list-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:310px;overflow:auto;padding:0 10px 12px}.heritage-site .tree-mobile-person{min-height:44px;padding:7px 9px;border:1px solid #d9c3a0;background:#fffdf8;color:#3c2a1b;text-align:left;font:13px/1.25 var(--h-sans);overflow-wrap:anywhere}.heritage-site .tree-mobile-person:focus-visible{outline:3px solid #8d432f;outline-offset:2px}}
@media(max-width:360px){.house-hero{height:735px}.house-welcome h1{font-size:45px}.house-welcome{left:22px;right:22px}.heritage-section{padding-inline:22px}.heritage-site .family-name{font-size:31px}.heritage-site .calendar-grid{gap:3px}.heritage-site .cal-nav{padding:8px 10px}.heritage-site .member-nav .mn-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.heritage-site:not(.motion-opted-in) *, .heritage-site:not(.motion-opted-in) *::before,.heritage-site:not(.motion-opted-in) *::after{animation:none!important;transition:none!important}.heritage-site:not(.motion-opted-in) .house-scene img{transform:none!important}}
/* ============ v11.1 — Motion layer (sparkle.js): the door, and transforms handed to Motion ============ */
.house-welcome{animation:none}
.heritage-site .heritage-button{transition:background .25s,color .25s}.heritage-site .heritage-button:hover{transform:none}
.door-space{position:absolute;inset:0;display:none;pointer-events:none}
.door-rig{position:absolute;perspective:520px}
.door-glow{position:absolute;inset:-1% -2%;opacity:0;background:radial-gradient(ellipse at 50% 42%,#fff5dc 0%,#f8cd86 26%,#c07f3e 58%,#4d2c15 100%);box-shadow:0 0 70px 34px #ffd08f99,0 0 170px 90px #f4b86a55}
.door-leaf{position:absolute;top:0;bottom:0;width:50%;background-image:url('images/tharavadu-entrance-2.webp');background-repeat:no-repeat;backface-visibility:hidden;overflow:hidden}
.door-leaf-left{left:0;transform-origin:left center}.door-leaf-right{right:0;transform-origin:right center}
.door-leaf-shade{position:absolute;inset:0;opacity:0;background:linear-gradient(90deg,#1a0f08,#0c0704)}.door-leaf-right .door-leaf-shade{background:linear-gradient(270deg,#1a0f08,#0c0704)}
.door-light{position:fixed;inset:0;z-index:4000;background:#f6efe2;opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.door-space,.door-light{display:none!important}}
/* ============ v11.3 — review fixes: contrast, text sizes, targets, icons, altar controls ============ */
.chapter-number{color:#86653e}.room-no{color:#86653f}
.heritage-site .heritage-footer .footer-brand{font-size:32px;display:inline-flex;align-items:center;min-height:44px}
.heritage-site .footer-links a{min-height:44px;display:inline-flex;align-items:center}
.heritage-menu{cursor:pointer}
.story-copy>p,.album-copy>p:not(.eyebrow),.remembrance-copy>p:not(.eyebrow),.house-intro{font-size:16px}
.room-links p{font-size:14px}.eyebrow{font-size:11px}.brand-place{font-size:11px}
.house-caption{font-size:12px}.house-caption button{font-size:12px}
.private-note,.album-controls span,.heritage-footer>p,.heritage-footer .copyright,.home-invitation>p:last-child{font-size:12px}
.heritage-home #verse-ref{font-size:12px}#altar-years{font-size:12px}
.hicon{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em}
.heritage-button .hicon,.text-link .hicon{width:1.15em;height:1.15em}.room-arrow .hicon{width:24px;height:24px;display:block}.album-controls button .hicon{width:20px;height:20px}
.album-controls button{display:inline-flex;align-items:center;justify-content:center}
#heritage-motion{display:inline-flex;align-items:center;gap:6px}#heritage-motion .hicon{width:12px;height:12px}
.strip-icon{width:14px;height:14px;vertical-align:-2px;margin-right:3px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.house-scene picture{display:block;width:100%;height:100%}
@media(max-width:760px){.house-caption{font-size:11px}.house-caption button{font-size:12px}.house-caption>span{max-width:28ch}}
/* ============ v11.4 — the altar: the carved reredos artwork, a portrait set into its arch, a votive on the shelf ============ */
.prayer-corner.altar{height:auto;aspect-ratio:1077/1461;width:min(100%,560px);margin:0 auto;border:0;box-shadow:none;background:radial-gradient(ellipse at 50% 38%,#4a3122 0%,#2b1a10 55%,#170d08 100%);overflow:hidden;container-type:inline-size}
.altar-art{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:1;pointer-events:none}
/* a framed portrait hangs from a nail on the reredos panel; the candle (cut out as its own layer) stands in front of it */
.altar-frame{position:absolute;inset:0;width:auto;margin:0;transform:none;text-align:center;z-index:2;pointer-events:none}
.altar-photo{position:absolute;left:35%;top:29.5%;width:30%;height:27%;border:0;overflow:hidden;clip-path:none;background:linear-gradient(135deg,#7a4e26,#3a2312 45%,#63401f);box-shadow:0 .9cqw 2.2cqw #000a,0 .2cqw .4cqw #0008,inset 0 0 0 .3cqw #d6b26a,inset 0 0 0 1.05cqw #4b2f16,inset 0 0 0 1.35cqw #c9a15d,inset 0 0 0 2.6cqw #efe3c6}
.altar-photo img{position:absolute;inset:2.6cqw;width:calc(100% - 5.2cqw);height:calc(100% - 5.2cqw);object-fit:cover;object-position:50% 18%;background:#d9c7a8;opacity:0;filter:sepia(.32) contrast(1.05) brightness(.94);transition:opacity .9s ease}
.altar-photo img.is-showing{opacity:1}
.altar-nail{position:absolute;left:50%;top:24.6%;width:1.3cqw;height:1.3cqw;margin-left:-.65cqw;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f2d48a,#8a6420 70%);box-shadow:0 1px 2px #0009;z-index:2}
.altar-cord{position:absolute;left:50%;top:25.2%;width:2px;height:4.5%;margin-left:-1px;background:linear-gradient(#3a2a1c,#1e130b);z-index:2}
.altar-candle-front{position:absolute;left:45.34%;top:61.9%;width:8.73%;height:auto;z-index:3;pointer-events:none;filter:drop-shadow(0 .3cqw .5cqw #0006)}
/* a brass plaque resting on the cloth at the altar's foot */
.altar-plaque{position:absolute;left:21%;right:21%;top:89%;margin:0;z-index:4;padding:.55cqw 1.2cqw;background:linear-gradient(180deg,#e2c283,#b8903f);border:1px solid #6e4d1c;border-radius:2px;box-shadow:0 2px 6px #0007,inset 0 1px 0 #fff4;color:#2a1a0c;text-align:center}
#altar-name{display:block;font:clamp(12px,3.3cqw,19px)/1.2 var(--h-serif);color:#2a1a0c;overflow-wrap:anywhere}
html[lang="ml"] #altar-name{font-family:'Noto Serif Malayalam',Georgia,serif;font-size:clamp(12px,3cqw,17px)}
#altar-years{display:block;font:12px/1.5 var(--h-sans);letter-spacing:1.5px;color:#3a2510;margin-top:.3cqw}
.altar-note{display:none;position:absolute;left:22%;right:22%;top:32%;margin:0;text-align:center;font:italic clamp(13px,3.2cqw,18px)/1.5 var(--h-serif);color:#f2dfbd;text-shadow:0 1px 3px #000c;z-index:2}
.altar-empty .altar-frame{display:none}.altar-empty .altar-note{display:block}.altar-empty .altar-nav{display:none}
/* the paschal candle's flame breathes; the halo blooms when a visitor lights their votive */
.altar-glow{position:absolute;left:40.7%;top:53.8%;width:18%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffd89a 0%,#f2a94f88 35%,transparent 70%);mix-blend-mode:screen;opacity:0;pointer-events:none;z-index:4}
.altar-lit .altar-glow{opacity:.6;animation:altar-glow-breathe 3.2s ease-in-out infinite alternate}
@keyframes altar-glow-breathe{from{opacity:.4;transform:scale(.92)}to{opacity:.75;transform:scale(1.06)}}
.altar .prayer-halo{inset:auto 18% 8% 18%;height:34%;background:radial-gradient(ellipse at 50% 70%,#ffc46a33,transparent 65%);z-index:4;opacity:0;transition:opacity 1.2s}
.altar-lit .prayer-halo,.prayer-corner.altar:has(.candle.lit) .prayer-halo{opacity:1}
/* "Light a candle" lights the paschal candle itself: the button sits on its top, the flame rises from the wick */
.heritage-home .altar .candle{left:calc(49.7% - max(22px,4.5cqw));right:auto;top:calc(62% - max(20px,3.8cqw));bottom:auto;transform:none;width:max(44px,9cqw);height:calc(max(20px,3.8cqw) + 21.4cqw);z-index:5;cursor:pointer}
.altar .candle::before{content:'';position:absolute;left:50%;bottom:21.4cqw;width:2px;height:max(4px,.7cqw);margin-left:-1px;background:#2b2116;border-radius:1px}
.heritage-home .altar .candle:hover{transform:none}
.altar .wax{display:none}
.altar .wax-flame{left:calc(50% - max(4.5px,1.1cqw));bottom:calc(21.4cqw + max(3px,.4cqw));width:max(9px,2.2cqw);height:max(15px,3.6cqw);margin-left:0;opacity:0;transform-origin:50% 100%;border-radius:60% 60% 50% 50%/72% 72% 38% 38%;background:linear-gradient(180deg,#f39a2c 0%,#ffcf5a 45%,#fff5d6 100%);box-shadow:0 0 1.4cqw #ffb84dcc,0 0 4cqw #ff9c2a66;transition:opacity .5s}
.altar .wax-flame::after{content:'';position:absolute;left:32%;right:32%;bottom:10%;height:42%;border-radius:50% 50% 45% 45%;background:linear-gradient(#fffbe9,#ffe4a3)}
.altar .candle.lit .wax-flame{opacity:1;animation:hearth-flame 1.5s ease-in-out infinite alternate}
.altar .candle:hover .wax-flame{opacity:.28}.altar .candle.lit:hover .wax-flame{opacity:1}
.altar-nav{position:absolute;top:44%;width:44px;height:44px;border-radius:50%;border:1px solid #c9a15d66;background:#1a0a0899;color:#f0dcb4;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:6;padding:0;transition:background .25s}
.altar-nav:hover{background:#3a1c14dd}.altar-nav .hicon{width:22px;height:22px}.altar-nav-prev{left:2%}.altar-nav-next{right:2%}
.motion-paused .altar-glow{animation-play-state:paused!important}.motion-paused .altar-photo img{transition:none}
@media(max-width:760px){.prayer-corner.altar{width:100%;max-width:460px}}
@media(prefers-reduced-motion:reduce){.altar-lit .altar-glow{opacity:.6;transform:none}}

/* ============ v11.5 — design review: the chapel band, one frame on every page, focus rings on dark, craft details ============ */
/* A. The prayer corner is a full-bleed chapel: a dark band behind the altar (the altar's own box dissolves into it), cream copy;
      the invitation turns cream so the footer is the only dark coda. Page rhythm: dark photo · cream · cream · cream · dark chapel · cream · dark footer. */
.remembrance-section{position:relative;isolation:isolate;border-top:0;color:#e9d7b6}
.remembrance-section::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);z-index:-1;background:linear-gradient(180deg,#31200f 0%,#2a1a10 45%,#1f130a 100%);box-shadow:inset 0 1px 0 #b9925133,inset 0 -1px 0 #b9925133}
.prayer-corner.altar{background:radial-gradient(ellipse at 50% 42%,#5a3c27 0%,#3a251799 38%,transparent 68%)}
.remembrance-copy .chapter-number{color:#b8956a}.remembrance-copy .eyebrow{color:#d9ac7a}
.heritage-home .remembrance-copy h2{color:#fff0d4}
.remembrance-copy>p:not(.eyebrow){color:#d8c4a2}
.remembrance-copy .heritage-button{border-color:#b99251;color:#fff1d6}.remembrance-copy .heritage-button:hover{background:#f0dfbf;color:#3c2516}
.heritage-home .verse-section{border-top-color:#b9925166}.heritage-home #verse-text{color:#e3cba3}.heritage-home #verse-ref{color:#bfa27a}
.remembrance-copy .candle-count,.remembrance-copy .candle-done{color:#d9c39f}.remembrance-copy .candle-count strong{color:#f2d48a}
.home-invitation{background:var(--h-paper);color:var(--text-primary);border-top:0}
.home-invitation h2{color:var(--h-teak)}.home-invitation .home-malayalam{color:var(--h-red)}.home-invitation>p:last-child{color:var(--text-secondary);text-wrap:balance}
.home-invitation .heritage-button.light-button{border-color:#80582d;background:transparent;color:#5d3b23}.home-invitation .heritage-button.light-button:hover{background:#694129;color:#fff1d6}
/* B. The nav call-to-action was asking for Outfit, a face the pages never load. */
.heritage-site .nav-cta{font-family:var(--h-sans)}
/* C. Inner pages share the homepage frame (same nav links, same footer); the wordmark is a 44px target everywhere. */
.heritage-site .nav-brand{display:inline-flex;flex-direction:column;justify-content:center;min-height:44px}
/* D. Accessibility: brass focus rings on dark surfaces (3:1 against teak), the selected choice card reads at 5:1, no label text under 12px. */
.heritage-site .site-nav :focus-visible,.heritage-site .house-hero :focus-visible,.heritage-site .remembrance-section :focus-visible,.heritage-site footer :focus-visible{outline-color:#f2d48a}
.heritage-site .choice-card:has(input:checked){color:#74501f}
.eyebrow{font-size:12px}.brand-place{font-size:12px}.heritage-home #verse-ref{font-size:12px}
/* E. Craft: selection colour, balanced headings, no orphans, hover effects only where a pointer can hover, a chevron on the story disclosure, a calmer hero caption on phones. */
.heritage-site ::selection{background:var(--h-teak);color:#fff1d6}
.heritage-site h1,.heritage-site h2,.heritage-site h3{text-wrap:balance}.heritage-site p{text-wrap:pretty}
@media(hover:none){.heritage-button:hover{transform:none}.room-links>a:hover{background:transparent}.room-links>a:hover .room-arrow{transform:none}}
.family-history summary{list-style:none;display:flex;align-items:center;gap:10px}.family-history summary::-webkit-details-marker{display:none}
.family-history summary::before{content:'';flex:none;width:7px;height:7px;margin-left:2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .25s}.family-history[open] summary::before{transform:rotate(45deg)}
@media(max-width:760px){.house-caption{flex-wrap:wrap;font-size:12px;padding:9px 0 4px;row-gap:0}.house-caption>span{flex:1 1 100%;max-width:none}.house-caption button{margin-left:auto;font-size:12px}.house-welcome{bottom:112px}}
/* F. The 404 page in the family's own voice. */
.nf-wrap{min-height:64vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;padding:60px 24px}
.nf-code{font:clamp(88px,18vw,160px)/1 var(--h-serif);letter-spacing:-4px;color:#86653e;margin:0}
.nf-wrap p{color:var(--text-secondary);font-size:16px;max-width:36ch;margin:0}.nf-wrap .home-malayalam{color:var(--h-red);font-size:15px}
.nf-wrap .heritage-button{margin-top:18px}

/* The date follows the linked directory entry represented in this frame. */
#altar-remembrance{display:block;font:clamp(9px,2.2cqw,12px)/1.4 var(--h-sans);color:#3a2510;margin-top:.45cqw;letter-spacing:0}#altar-remembrance[hidden],#altar-years[hidden]{display:none}
