/* Guest Experience: tactile interface studies, native controls and stable flow. */
.features-studio{padding-block:60px 44px;background:var(--theme-surface,#faf8f5);border-block:1px solid var(--theme-control,#e6ddd5)}
.features-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:26px}
.features-heading h2{font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-.045em;margin:12px 0 0;font-weight:500}
.features-heading h2 span{color:var(--theme-accent,#60212c)}.features-heading-aside{max-width:370px;color:var(--theme-muted,#685b55);font-size:14px;line-height:1.65}.features-heading-aside p{margin:0}.features-heading-aside .features-preview-label{font-size:10px;font-weight:600;margin-top:10px;color:var(--theme-accent,#60212c);letter-spacing:.05em}
.features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature-card{min-width:0;background:var(--theme-surface,#fffdfb);border:1px solid var(--theme-rule,#e4dbd3);border-radius:14px;overflow:hidden;--demo-accent:#60212c}
.feature-visual{height:246px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--theme-raised,#eae5dd)}
.feature-card-body{padding:16px 18px 13px}.feature-card-heading{display:flex;align-items:baseline;gap:10px}.feature-index{font-size:10px;color:var(--theme-muted,#86756a);flex:none}.feature-card h3{font-size:19px;line-height:1.3;letter-spacing:-.035em;font-weight:500;margin:0}.feature-card-copy{font-size:13px;line-height:1.6;color:var(--theme-muted,#685b55);margin:7px 0 11px;min-height:42px}
.feature-scope{display:block;border-top:1px solid var(--theme-rule,#e9e1da);padding-top:9px;font-size:10px;line-height:1.5;color:var(--theme-muted,#68483d);text-decoration:none}.feature-scope:hover{text-decoration:underline}
.feature-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.feature-personal .feature-visual:after{content:'';position:absolute;inset:0;background:var(--theme-soft-a20,#715d4420);z-index:-1}
.glass-panel{width:calc(100% - 52px);max-width:330px;border:1px solid var(--theme-rule-ad9,#ffffffd9);border-radius:13px;background:linear-gradient(135deg,var(--theme-surface-aed,#fffdf8ed),var(--theme-surface-ac7,#fffdf8c7));box-shadow:0 2px 3px var(--theme-shadow-a0a,#7562520a),0 15px 28px -15px var(--theme-shadow-a59,#66513d59),inset 0 1px 0 var(--theme-shadow,#fff);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:17px;color:var(--theme-text,#302a27);position:relative}
.interface-kicker{font-size:9px!important;font-weight:600;letter-spacing:.06em;line-height:1.5!important;color:var(--theme-muted,#775d4a);margin:0}.interface-title{font-size:20px;line-height:1.35;font-weight:500;margin:8px 0 5px;letter-spacing:-.03em}.interface-hint{font-size:10px;line-height:1.5;color:var(--theme-muted,#776457);margin:4px 0 10px}
.features-studio button,.features-studio input{font:inherit;box-sizing:border-box;min-height:44px;min-width:44px;border:1px solid var(--theme-control,#d8c8bc);border-radius:7px;background:var(--theme-surface,#fffefa);color:var(--theme-accent,#60212c)}.features-studio button{cursor:pointer;padding:8px 12px;font-size:12px;line-height:1.3}.features-studio input{width:100%;font-size:13px;padding:9px 12px;color:var(--theme-text,#302a27);max-width:100%}.features-studio input::placeholder{color:var(--theme-muted,#776457)}.features-studio :is(button,input,a):focus-visible{outline:2px solid var(--theme-accent,#60212c);outline-offset:3px}.features-studio button:hover{border-color:var(--theme-accent,#60212c)}.features-studio button[aria-pressed=true]{background:var(--theme-brand,#60212c);color:var(--theme-on-brand,#fffdf9);border-color:var(--theme-accent,#60212c)}
.name-panel{text-align:center;background:linear-gradient(135deg,var(--theme-surface-aed,#fffdf8ed),var(--theme-surface-ac2,#fffdf8c2))}#featureNamePreview{font-family:var(--font-display,inherit);font-size:29px;font-weight:500;line-height:1.2;min-height:35px;margin:11px 0 12px;color:var(--demo-accent);overflow-wrap:anywhere}#featureNamePreview.long-name{font-size:22px}.name-panel .feature-controls{display:grid;grid-template-columns:1fr;gap:3px}.feature-swatches{display:flex;justify-content:center;gap:2px}.features-studio .feature-swatches button{background:transparent;border:1px solid transparent;padding:10px;border-radius:50%;display:grid;place-items:center}.feature-swatches span{width:18px;height:18px;border-radius:50%;background:var(--theme-brand-deep,#60212c);box-shadow:0 0 0 3px var(--theme-shadow,#fffdf8)}.feature-swatches [data-feature-colour=champagne] span{background:var(--theme-soft,#806a50)}.feature-swatches [data-feature-colour=ink] span{background:var(--theme-surface,#30282c)}.features-studio .feature-swatches button[aria-pressed=true]{border-color:var(--theme-control,#806a50)}
.feature-date .feature-visual{background:radial-gradient(ellipse at 65% 20%,var(--theme-raised,#f8f5ef),var(--theme-soft,#dddacf))}.calendar-back{position:absolute;width:65%;height:190px;background:var(--theme-soft,#d6d0c4);border-radius:12px;transform:rotate(-7deg) translate(-5px,4px);box-shadow:0 10px 20px var(--theme-shadow-a20,#79664d20)}.calendar-panel{padding:13px 18px;max-width:290px}.calendar-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--theme-rule,#d9cfc2);padding-bottom:7px;gap:8px}.calendar-top strong{font-size:17px;font-weight:500}.calendar-top small{display:block;font-size:10px;color:var(--theme-muted,#776457);margin-top:3px}#featureDateDay{font-size:30px;line-height:1;color:var(--theme-accent,#60212c)}.mini-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center;direction:ltr;padding-top:7px;font-size:10px;line-height:19px;color:var(--theme-muted,#695c51)}.mini-calendar .calendar-weekday{color:var(--theme-muted,#786352);font-size:8px}.mini-calendar .selected{border-radius:50%;background:var(--theme-brand,#60212c);color:var(--theme-on-brand,#fff)}.countdown-line{text-align:center;color:var(--theme-accent,#60212c);font-size:10px;margin:5px 0 7px;line-height:1.4;min-height:14px}#featureDate{min-height:44px;height:44px;font-size:12px;padding:6px 9px}
.feature-venue .feature-visual{background:var(--theme-raised,#e8e9df)}.venue-map{position:absolute;inset:0;width:100%;height:100%;transform:scale(1.18) rotate(-13deg)}.map-caption{position:absolute;inset-block-start:15px;inset-inline-start:17px;margin:0;z-index:1;max-width:165px;color:var(--theme-success,#536047);font-size:8px;font-weight:600;line-height:1.5;letter-spacing:.03em}.venue-marker{position:absolute;top:68px;inset-inline-end:30px;background:var(--theme-brand-deep,#60212c);color:var(--theme-on-brand,#fffdf8);padding:8px 10px;border-radius:7px;box-shadow:0 5px 12px var(--theme-shadow-a33,#513f3a33);font-size:11px}.venue-marker>span:last-child{margin-inline-start:8px}.feature-route{opacity:0;transition:opacity .35s} [data-route=true] .feature-route{opacity:1}.route-panel{position:absolute;bottom:14px;padding:8px 10px;width:calc(100% - 34px);max-width:none}.route-panel button{width:100%;display:flex;align-items:center;justify-content:space-between}.feature-state{font-size:10px!important;line-height:1.4!important;min-height:28px;margin:5px 0 0;color:var(--theme-muted,#685b55)}.route-panel .feature-state{min-height:0}.route-panel .feature-state:empty{display:none}
.feature-rsvp .feature-visual{background:radial-gradient(ellipse at 40% 20%,var(--theme-raised,#eee2df),var(--theme-soft,#ded2cc))}.rsvp-back{position:absolute;width:70%;height:180px;background:var(--theme-soft,#cbb5af);border-radius:12px;transform:rotate(7deg)}.rsvp-panel{text-align:center;padding:13px 17px}.rsvp-seal{font-family:serif;font-size:29px;line-height:27px;color:var(--theme-accent,#60212c)}.rsvp-panel .interface-title{margin:2px 0;font-size:20px}.rsvp-panel .interface-hint{margin:3px 0 10px}.rsvp-panel .feature-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px}.wishes-hint{font-size:10px;color:var(--theme-muted,#776457);border-top:1px solid var(--theme-rule,#ddcfc5);padding-top:8px;margin:5px 0 0}.rsvp-panel .feature-state{min-height:28px}
.feature-gift .feature-visual{background:radial-gradient(ellipse at 65% 10%,var(--theme-raised,#f2eadd),var(--theme-soft,#e1d5c6))}.gift-back{width:65%;height:175px;position:absolute;background:var(--theme-soft,#c8b89f);transform:rotate(-7deg);border-radius:12px}.gift-panel{padding:15px 18px}.gift-top{display:flex;justify-content:space-between;align-items:center}.gift-top>span:last-child{font-size:26px;color:var(--theme-muted,#806a50)}.bank-detail{display:flex;gap:12px;align-items:center;margin:12px 0}.bank-monogram{display:grid;place-items:center;border:1px solid var(--theme-rule,#d4c3ad);background:linear-gradient(130deg,var(--theme-raised,#f6eddb),var(--theme-soft,#dbcaac));border-radius:9px;width:46px;height:42px;flex:none;font-size:20px;color:var(--theme-muted,#6d573c)}.bank-detail>div{min-width:0}.bank-detail strong{font-size:12px;display:block;overflow-wrap:anywhere}.bank-detail small{display:block;font-size:8px;margin-top:3px;color:var(--theme-muted,#776457)}.gift-panel .interface-hint{font-size:10px;margin:0 0 10px}.gift-panel button{width:100%;display:flex;align-items:center;justify-content:space-between}.gift-panel .feature-state{min-height:28px}
.feature-music .feature-visual{background:radial-gradient(ellipse at 35% 10%,var(--theme-raised,#e5e7dc),var(--theme-soft,#cfd5c4))}.music-glow{position:absolute;width:230px;height:230px;border-radius:50%;background:var(--theme-raised,#f9f5e7);filter:blur(25px);opacity:.6}.music-panel{padding:17px 18px}.music-track{display:flex;align-items:center;gap:13px}.music-track .feature-scene{position:static;width:49px;height:49px;flex:none;z-index:auto;border-radius:6px;object-fit:cover;object-position:80%}.music-track .interface-title{font-size:17px;margin:4px 0 0}.music-track .interface-kicker{font-size:8px!important}.music-bars{height:40px;display:flex;align-items:center;justify-content:center;gap:4px;margin-top:12px;direction:ltr}.music-bars i{width:4px;border-radius:3px;height:var(--bar);background:var(--theme-soft,#9b9d87)}.music-time{display:flex;justify-content:space-between;direction:ltr;font-size:9px;color:var(--theme-muted,#776457);margin:0 0 9px}.music-panel button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%}.music-stop-icon{display:none}[data-playing=true] .music-play-icon{display:none}[data-playing=true] .music-stop-icon{display:inline}[data-playing=true] .music-bars i{background:var(--theme-brand-deep,#60212c);animation:guestWave .65s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-70ms)}@keyframes guestWave{to{transform:scaleY(.4)}}
.features-support{margin-top:19px}.features-scope-summary{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0}.features-scope-summary>div{border-top:1px solid var(--theme-rule,#e4dbd3);padding-top:10px;display:flex;gap:16px}.features-scope-summary dt{font-size:9px;font-weight:600;color:var(--theme-accent,#60212c);flex:none;width:100px;padding-top:2px}.features-scope-summary dd{font-size:11px;color:var(--theme-muted,#685b55);line-height:1.5;margin:0}.features-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:17px;border-top:1px solid var(--theme-rule,#e4dbd3);padding-top:15px}.features-bottom p{font-size:11px;line-height:1.5;color:var(--theme-muted,#685b55);margin:0;max-width:700px}.feature-compare{display:flex;align-items:center;gap:20px;font-size:13px;white-space:nowrap;text-decoration:none;color:var(--theme-accent,#60212c)}
html[lang=ar] .features-studio :is(h2,h3,.interface-title,.interface-kicker,.features-preview-label){letter-spacing:0}html[lang=ar] .feature-card h3{font-size:21px}html[lang=ar] .feature-card-copy{line-height:1.65}html[lang=ar] .features-scope-summary dt{font-size:11px}
@media(min-width:1700px){.feature-visual{height:256px}}
@media(min-width:701px) and (max-width:1100px){.features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.features-heading-aside{max-width:300px}.features-scope-summary{grid-template-columns:1fr}.feature-card-copy{min-height:42px}}
@media(max-width:700px){.features-studio{padding-block:36px 30px}.features-heading{display:block;margin-bottom:20px}.features-heading h2{font-size:35px}.features-heading-aside{margin-top:15px;max-width:100%;font-size:13px}.features-preview-label{font-size:9px!important}.features-grid{grid-template-columns:1fr;gap:18px}.feature-visual{height:250px}.feature-card-body{padding:16px 17px 13px}.feature-card h3{font-size:20px}.feature-card-copy{font-size:13px;min-height:0}.feature-scope{font-size:10px}.features-scope-summary{grid-template-columns:1fr;gap:13px}.features-scope-summary>div{display:block}.features-scope-summary dt{width:auto;margin-bottom:6px}.features-bottom{display:block;margin-top:18px}.feature-compare{margin-top:17px;justify-content:space-between;min-height:44px}.glass-panel{width:calc(100% - 40px);max-width:330px}.calendar-panel{max-width:285px}.route-panel{width:calc(100% - 30px);max-width:none}.music-bars{gap:4px}.feature-state{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){#features *,#features *:before,#features *:after{animation:none!important;transition:none!important}}
/* Keep full interface panels inside each visual, including six-week months. */
#features .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.features-studio{padding-block:38px 30px}.features-heading{margin-bottom:20px}.features-heading h2{font-family:var(--body);font-size:38px;line-height:1.12;margin-top:9px}.feature-visual{height:230px}.calendar-panel{padding:10px 17px}.calendar-top{padding-bottom:5px}.calendar-top strong{font-size:16px}.calendar-top small{font-size:9px;margin-top:1px}.mini-calendar{padding-top:4px;line-height:14px;gap:1px}.countdown-line{margin:4px 0 6px}.feature-card-body{padding-block:13px 11px}.feature-card-copy{margin:6px 0 9px}.feature-scope{padding-top:7px}.features-heading .eyebrow{margin-top:0}.features-support{margin-top:16px}.features-bottom{margin-top:13px;padding-top:12px}
@media(min-width:1700px){.feature-visual{height:240px}}
@media(max-width:700px){.features-studio{padding-block:32px 26px}.features-heading h2{font-size:33px}.feature-visual{height:250px}.feature-card-body{padding-block:15px 13px}}
.features-studio{padding-block:30px 22px}.features-heading{margin-bottom:16px}.glass-panel{line-height:1.35}.feature-index{color:var(--theme-muted,#79665a)}.calendar-top{line-height:1.25}.calendar-top strong{line-height:1.25}.calendar-top small{line-height:1.35}.mini-calendar{line-height:12px;gap:0}.gift-top{line-height:1}.gift-top>span:last-child{line-height:1}.gift-panel{padding-block:12px}.bank-detail{margin-block:10px}.bank-detail strong,.bank-detail small{line-height:1.4}.music-panel{padding-block:13px}.music-bars{margin-top:8px}.rsvp-seal{display:block;line-height:27px}.wishes-hint{line-height:1.4}.rsvp-panel{padding-block:12px}#featureNamePreview.long-name{font-size:16px;line-height:1.15;margin-block:8px}
.route-panel{left:50%;right:auto;transform:translateX(-50%)}
@media(max-width:700px){.features-studio{padding-block:32px 26px}}

/* Original stationery emblems, paired across replies and wedding gifts.
   Flexible visual height protects the complete interactive states and larger text. */
.feature-rsvp .feature-visual,.feature-gift .feature-visual,.feature-music .feature-visual{height:auto;min-height:286px;padding-block:18px}
.rsvp-seal{display:block;width:90px;height:56px;object-fit:contain;margin:0 auto 4px}
.gift-top{gap:12px;min-height:56px}
.gift-art{display:block;flex:none;width:80px;height:56px;object-fit:contain}
.bank-monogram{width:42px;height:42px;background:var(--theme-raised,#f4eddf);color:var(--theme-muted,#785f43)}
.bank-monogram .ui-icon{display:block;width:24px;height:24px}
/* Arabic section titles follow the site's display role, not interface copy. */
html[lang=ar] .features-heading h2{font-family:var(--display);font-weight:400;line-height:1.5;letter-spacing:0}
