@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--cream:#faf7ef;--paper:#fffdf8;--green:#264b3a;--deep:#213f32;--muted:#73776b;--gold:#ad8850;--rust:#a66647;--line:#deded0;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;color:var(--green);background:var(--cream);font-family:var(--sans);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:30px}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}::selection{background:#dce6d2}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h2{font-size:58px;line-height:1.06;letter-spacing:-1.5px}h2 em,h1 em{font-weight:400;color:var(--rust)}.wrap{width:min(1220px,calc(100% - 112px));margin:auto}.site-header{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-weight:600;font-size:27px;white-space:nowrap}.wordmark i{font-weight:400;color:var(--gold)}.brand-flower{font-size:35px;color:var(--gold);margin-right:9px}.site-header nav{display:flex;align-items:center;gap:35px;font-size:14px}.site-header nav>a:not(.button):hover{color:var(--rust)}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--green);color:white;border:1px solid var(--green);border-radius:5px;padding:15px 24px;font-size:14px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s}.button:hover{background:#356348;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.button-small{padding:11px 22px;gap:22px}.hero{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:68px;padding-top:59px;padding-bottom:78px}.eyebrow{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:2px;line-height:1.6}.hero .eyebrow{display:flex;gap:11px;align-items:center;color:var(--gold)}.hero .eyebrow>span{width:25px;height:1px;background:var(--gold)}.overline{font-size:12px;letter-spacing:1.4px;margin-top:28px;margin-bottom:16px}.hero h1{font-size:88px;line-height:.99;letter-spacing:-2.8px}.hero h1 em{display:inline-block;padding-bottom:6px}.hero-description{margin-top:26px;color:#6b7266;line-height:1.85;font-size:16px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:28px}.text-link{font-size:14px;border-bottom:1px solid #98a18d;padding-bottom:3px;white-space:nowrap}.text-link:hover{color:var(--rust);border-color:var(--rust)}.hero-date{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:28px;font-size:11px;letter-spacing:1.15px}.hero-date>span:first-child{font-size:17px;color:var(--gold)}.hero-art{position:relative;padding:8px 14px 28px 0;align-self:stretch;min-height:570px}.portrait-frame{height:100%;max-height:646px;min-height:550px;border-radius:49% 49% 5px 5px / 39% 39% 5px 5px;position:relative;border:1px solid #a79d72;padding:10px}.portrait-frame:before{content:'';position:absolute;inset:7px -8px -8px 7px;border:1px solid #d0c6a7;border-radius:inherit;z-index:-1}.portrait-frame img{display:block;width:100%;height:100%;max-height:624px;min-height:528px;object-fit:cover;object-position:center 45%;border-radius:inherit;background:#e6e3cf}.portrait-caption{position:absolute;bottom:4px;left:-26px;padding:15px 27px;background:var(--paper);box-shadow:0 6px 24px #263c3210;border:1px solid #ebe7d9;transform:rotate(-3deg);text-align:center}.portrait-caption>span{display:block;font-family:var(--serif);font-style:italic;font-size:27px}.portrait-caption strong{font-size:10px;font-weight:500;letter-spacing:1px}.orbit-word{position:absolute;right:-15px;top:38%;writing-mode:vertical-rl;font-size:9px;letter-spacing:2.7px;color:var(--gold)}.section{padding:84px 0}.celebration{background:#eff1e7;border-top:1px solid #e4e6dc;border-bottom:1px solid #e4e6dc}.section-intro{text-align:center;max-width:680px;margin:0 auto}.section-intro>.eyebrow{color:#7b826b}.section-intro h2{margin:19px 0 24px}.section-intro p{font-size:16px;line-height:1.85;color:#6b7265;max-width:625px;margin:auto}.event-details{display:grid;grid-template-columns:repeat(3,1fr);margin-top:62px;text-align:center}.event-details article{padding:0 22px}.event-details article+article{border-left:1px solid #d6dacb}.detail-icon{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid #b6bfab;border-radius:50%;font-family:var(--serif);font-style:italic;font-size:18px;margin-bottom:17px}.event-details h3{font-size:28px;margin:11px 0 4px}.event-details p:not(.eyebrow){font-size:14px;color:#626f5f}.event-details .text-link,.small-note{display:inline-block;margin-top:18px;font-size:13px}.small-note{font-family:var(--serif);font-style:italic;font-size:18px;color:#768064}.muted{color:#737c6d}.blessing{text-align:center;padding-top:73px;padding-bottom:74px}.blessing-mark{color:var(--gold);font-size:26px;display:block;margin-bottom:19px}.blessing>p{font-size:38px;line-height:1.25;font-family:var(--serif)}.blessing>p em{color:var(--rust)}.blessing>.eyebrow{display:block;margin-top:24px;font-size:10px;color:var(--gold)}.venue{background:var(--green);color:#faf8ee}.venue-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:center}.venue .eyebrow{color:#c1cca7;font-size:11px}.venue h2{margin:22px 0}.venue h2 em{color:#d6ba87}.venue p{font-size:15px;line-height:1.85;color:#d0d9cb;max-width:360px}.venue address{font-size:18px;font-style:normal;line-height:1.65;margin:25px 0}.button-light{background:#eeeacf;color:var(--green);border-color:#eeeacf}.button-light:hover{background:#fffaf0}.map-card{background:#f8f5ec;padding:11px;border:1px solid #e6e7d755;border-radius:8px;color:var(--green);overflow:hidden}.map-card iframe{width:100%;height:340px;border:0;border-radius:4px;background:#e8e9df}.map-caption{display:flex;gap:15px;align-items:center;padding:12px 8px 6px}.map-caption>span{font-size:32px;color:var(--gold)}.map-caption strong{display:block;font-size:13px;font-weight:550}.map-caption div>span{font-size:12px;color:var(--muted)}.rsvp-section{padding:99px 0;background:#f9f5eb}.rsvp-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:start}.rsvp-copy{padding-top:43px}.rsvp-copy>.eyebrow{color:var(--gold);font-size:11px}.rsvp-copy h2{font-size:70px;margin:21px 0 27px}.rsvp-copy>p{font-size:16px;color:#6f786a;line-height:1.9}.host-note{display:flex;gap:18px;padding-top:43px;margin-top:40px;border-top:1px solid var(--line);max-width:355px}.host-note>span{font-size:40px;color:var(--gold);line-height:1}.host-note p{font-size:14px;color:#777d70}.host-note strong{display:block;font-size:23px;font-family:var(--serif);font-weight:600;color:var(--green);line-height:1.5}.host-note p>span{display:block;font-size:13px}.rsvp-card{background:var(--paper);padding:37px;border:1px solid #e1dfd2;box-shadow:0 5px 40px #3c493207;border-radius:9px}.rsvp-card h3{font-size:34px;line-height:1.1;margin:0 0 11px}.form-intro{font-size:14px;color:var(--muted);margin-bottom:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:13px;font-weight:500;margin-bottom:20px}label>span:not(.optional):not(.field-help){color:var(--rust)}input:not([type=radio]),textarea,select{display:block;width:100%;padding:12px 13px;margin-top:7px;border:1px solid #dcded4;border-radius:4px;background:#fdfdf8;color:var(--green);font-size:14px;min-height:46px}input::placeholder,textarea::placeholder{color:#8b8e83;font-size:13px;font-weight:400}input:focus,textarea:focus{border-color:#8b9c7e}textarea{resize:vertical}.field-help,.optional{color:#858b7c;font-size:11px;font-weight:400}.field-help{display:block;font-size:12px}.optional{margin-left:5px}.attendance-field{border:0;padding:0;margin:0 0 22px}.attendance-field legend{font-size:13px;font-weight:500;margin-bottom:8px}.attendance-field legend>span{color:var(--rust)}.attendance-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.attendance-options label{position:relative;margin:0;font-size:13px;cursor:pointer}.attendance-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.attendance-options label span{display:block;text-align:center;border:1px solid #dcded4;padding:12px 8px;border-radius:4px;color:#6e7767!important;line-height:1.5}.attendance-options input:checked+span{border-color:#7d916b;background:#f0f3e9;color:var(--green)!important}.attendance-options input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}.submit-button{width:100%;margin-top:1px;justify-content:space-between}.privacy-note{font-size:11px;color:#8c9082;text-align:center;line-height:1.6;margin-top:16px}.form-error{font-size:14px;background:#f8e8e2;color:#9d3528;padding:12px;margin-bottom:15px;border-radius:4px}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.rsvp-success{text-align:center;padding:55px 3px}.success-heart{font-size:80px;color:var(--rust)}.rsvp-success .eyebrow{font-size:10px;margin:10px 0 20px}.rsvp-success h3{font-size:44px}.rsvp-success p:not(.eyebrow){margin:22px 0 32px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:29px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner .wordmark{font-size:23px}.footer-inner p{font-family:var(--serif);font-style:italic;color:#7a816e;font-size:20px}.footer-inner>span{font-size:10px;letter-spacing:1.5px;color:#737a66}.footer-inner>span span{font-size:22px;margin-left:13px;color:var(--rust)}[hidden]{display:none!important}.skip-link{position:absolute;left:20px;top:-100px;z-index:20;background:var(--green);color:white;padding:12px}.skip-link:focus{top:10px}
@media(min-width:1500px){.hero{gap:100px;padding-top:72px;padding-bottom:90px}.hero h1{font-size:96px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:35px}.hero h1{font-size:74px}.hero-art{min-height:530px}.portrait-frame{min-height:510px}.portrait-frame img{min-height:488px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-date{font-size:10px}.venue-grid,.rsvp-grid{gap:45px}.rsvp-card{padding:28px}.event-details h3{font-size:24px}.site-header nav{gap:23px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:81px}.wordmark{font-size:23px;gap:5px}.brand-flower{font-size:27px;margin-right:3px}.site-header nav>a:not(.button){display:none}.button-small{padding:9px 13px;gap:10px}.hero{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:45px}.hero .eyebrow{font-size:10px;letter-spacing:1.7px}.overline{font-size:10px;letter-spacing:1.2px;margin-top:22px;margin-bottom:15px}.hero h1{font-size:clamp(60px,13vw,84px);letter-spacing:-2px;line-height:.98}.hero-description{font-size:15px;margin-top:20px}.hero-actions{gap:20px;margin-top:24px}.hero-actions>.text-link{font-size:12px}.hero-date{font-size:10px;margin-top:22px;gap:7px}.hero-art{min-height:0;padding:4px 14px 29px 7px;max-width:480px;width:100%;margin:auto}.portrait-frame{min-height:0;height:auto;aspect-ratio:.83;padding:8px}.portrait-frame img{min-height:0;height:100%;max-height:none}.portrait-caption{left:-4px;bottom:7px;padding:11px 21px}.portrait-caption>span{font-size:24px}.portrait-caption strong{font-size:9px}.orbit-word{right:-7px;font-size:8px;letter-spacing:2px}.section{padding:57px 0}h2{font-size:45px;letter-spacing:-1.2px}.section-intro>.eyebrow{font-size:10px}.section-intro p{font-size:15px}.section-intro h2{margin:17px 0 20px}.event-details{grid-template-columns:1fr;margin-top:35px}.event-details article{padding:23px 0}.event-details article+article{border-left:0;border-top:1px solid #d6dacb}.event-details h3{font-size:30px}.detail-icon{margin-bottom:13px}.event-details .text-link,.small-note{margin-top:12px}.blessing{padding-top:48px;padding-bottom:48px}.blessing>p{font-size:29px}.blessing>.eyebrow{font-size:9px}.venue-grid,.rsvp-grid{grid-template-columns:1fr;gap:35px}.venue h2{font-size:51px}.venue p{max-width:100%}.map-card iframe{height:290px}.map-caption strong{font-size:12px}.rsvp-copy{padding-top:0}.rsvp-copy h2{font-size:59px;margin:15px 0 20px}.rsvp-copy>p{font-size:15px}.host-note{padding-top:24px;margin-top:26px;max-width:100%}.rsvp-card{padding:25px 21px}.rsvp-card h3{font-size:31px}.form-row{gap:12px}.form-row:first-of-type{grid-template-columns:1fr;gap:0}.attendance-options label{font-size:12px}.optional{display:inline}.rsvp-copy .desktop-break{display:none}.footer-inner{flex-direction:column;gap:8px}.footer-inner p{font-size:18px}.footer-inner>span{font-size:9px}input:not([type=radio]),textarea,select{font-size:16px}.privacy-note{font-size:12px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
/* Practical type sizes for forms and details. */
label,.attendance-field legend,.text-link{font-size:14px}.attendance-options label{font-size:14px}.optional,.privacy-note{font-size:12px}.hero-date{font-size:12px}.hero-date .date-separator{font-size:14px}@media(max-width:760px){.hero-date{font-size:11px}.attendance-options label{font-size:13px}.hero-actions>.text-link{font-size:13px}}

/* Traditional Telugu invitation: vermilion, antique gold, silk green. */
.traditional{--cream:#fcf4e5;--paper:#fffaf0;--green:#294932;--rust:#831f2f;--gold:#ad813a;--line:#dccb9e;background:var(--cream)}
.traditional .site-header{border-bottom:3px double #c7a66b;height:91px}
.traditional .wordmark{color:#751e2b}.traditional .brand-flower{color:#b88935}
.traditional .hero{position:relative;padding-top:66px;padding-bottom:83px;gap:38px;grid-template-columns:1.1fr 1fr}
.traditional .hero h1{font-size:clamp(65px,6.8vw,102px);line-height:1.13;letter-spacing:-2px;color:#761b2c;margin-left:-4px}
.traditional .hero .eyebrow{font-size:11px;letter-spacing:1.65px;color:#99722d}
.traditional .overline{margin-top:28px;margin-bottom:12px;letter-spacing:2.1px;font-size:11px}
.ceremony-subtitle{font-family:var(--serif);font-size:27px;color:#45603c;line-height:1.4;margin-top:4px}
.parents-names{font-family:var(--serif);font-size:39px;color:#7c2330;line-height:1.5;margin-top:22px;font-weight:600}.parents-names i{font-weight:400;font-size:34px;color:var(--gold);padding:0 5px}
.gold-divider{display:flex;align-items:center;gap:13px;color:var(--gold);width:155px;margin-top:15px;font-size:14px}.gold-divider:before,.gold-divider:after{content:'';height:1px;background:var(--gold);flex:1}
.traditional .hero-description{margin-top:18px;color:#756a58}.traditional .hero-actions{gap:25px;margin-top:27px}.traditional .hero-actions .button{background:#7c2432;border-color:#7c2432;padding:14px 21px;gap:17px}.traditional .hero-actions .button:hover{background:#943c46}
.traditional .hero-art{min-height:570px;padding-bottom:23px}.traditional .portrait-frame{border:2px solid #aa853f;padding:9px;background:#f7e9c9;box-shadow:0 0 0 4px #fcf4e5,0 0 0 5px #c5a363;max-height:625px;min-height:540px}.traditional .portrait-frame img{min-height:517px;max-height:602px;object-position:center center}
.traditional .portrait-frame:before{border:0}.traditional .portrait-caption{border:1px solid #c6a870;box-shadow:0 4px 20px #65471a14;color:#732331;transform:rotate(-2deg)}.traditional .portrait-caption strong{color:#7a724f}
.traditional .celebration{background:#f4ead3;border-top:3px double #c9ae76;border-bottom:3px double #c9ae76}.traditional .section-intro>.eyebrow{color:#997233}.traditional .detail-icon{color:#9c7331;border-color:#b8a574}.traditional .event-details article+article{border-color:#d4c49e}.traditional .event-details p:not(.eyebrow){color:#706b56}
.traditional .blessing{padding-top:60px;padding-bottom:60px}.traditional .venue{background:#2e4531;border-top:3px double #c8ae6c;border-bottom:3px double #c8ae6c}.traditional .rsvp-section{background:#fcf4e5}.traditional .rsvp-card{border:1px solid #c7ae79;box-shadow:0 0 0 5px #fcf4e5,0 0 0 6px #e0ceaa}.traditional .rsvp-copy h2{color:#7c2432}.traditional .rsvp-copy h2 em{color:#395237}.traditional footer{border-top:3px double #c7a66b}
.toranam-banner{height:115px;background:var(--cream);overflow:hidden;position:relative}.toranam-banner img{display:block;position:absolute;left:0;top:0;width:100%;height:auto;min-height:100%;object-fit:cover;object-position:center top;mix-blend-mode:multiply}
@media(min-width:1500px){.traditional .hero h1{font-size:106px}.traditional .hero{gap:54px}}
@media(max-width:1100px){.traditional .hero{gap:35px;grid-template-columns:1.05fr 1fr}.traditional .hero h1{font-size:clamp(61px,6.8vw,78px)}.traditional .hero .eyebrow{font-size:10px;letter-spacing:1px}.ceremony-subtitle{font-size:24px}.traditional .hero-art{min-height:540px}.traditional .portrait-frame{min-height:510px}.traditional .portrait-frame img{min-height:487px}.traditional .hero-actions{gap:16px}.traditional .hero-actions>.text-link{font-size:13px}}
@media(max-width:760px){.traditional .site-header{height:78px}.traditional .hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:48px;gap:35px;text-align:center}.traditional .hero h1{font-size:clamp(53px,12.4vw,88px);letter-spacing:-1.3px;margin:0;line-height:1.15}.traditional .hero .eyebrow{justify-content:center;font-size:10px;letter-spacing:1.5px}.traditional .hero .eyebrow>span{display:none}.traditional .overline{margin:22px 0 8px;font-size:10px;letter-spacing:2px}.ceremony-subtitle{font-size:24px}.parents-names{font-size:35px;margin-top:17px}.gold-divider{margin:12px auto 0;width:130px}.traditional .hero-description{margin-top:16px;line-height:1.8}.traditional .hero-actions{justify-content:center;gap:20px}.traditional .hero-date{justify-content:center;font-size:10px;line-height:1.7}.traditional .hero-art{min-height:0;padding:3px 10px 29px;margin:4px auto 0;max-width:455px}.traditional .portrait-frame{min-height:0;max-height:none}.traditional .portrait-frame img{min-height:0;max-height:none}.traditional .portrait-caption{left:0;right:8px;bottom:9px;padding:10px}.traditional .portrait-caption>span{font-size:25px}.traditional .orbit-word{right:-9px}.traditional .event-details article+article{border-color:#d4c49e}.toranam-banner{height:81px}.toranam-banner img{width:760px;max-width:none;left:50%;transform:translateX(-50%)}.traditional .blessing>p{font-size:28px}.traditional .blessing{padding-top:44px;padding-bottom:44px}}

.map-card .venue-photo{display:block;width:100%;height:auto;aspect-ratio:1024/769;object-fit:cover;object-position:center;border-radius:4px}

#celebration .event-details{margin-top:0}.traditional .rsvp-copy{padding-top:30px}@media(max-width:760px){.traditional .rsvp-copy{padding-top:0}}
