/* The Invitation 0.3.6 — Nine genuinely distinct customer page layouts.
   Every selector is scoped to a design. Ivory wedding uses its existing template unchanged. */
.ti-public.ti-creative{margin:0!important;padding:0!important;max-width:none!important;width:100%;font:400 16px/1.65 Arial,Helvetica,sans-serif;color:#272727;overflow-x:hidden}
.ti-creative *{box-sizing:border-box}
.ti-creative main{width:100%;max-width:none;margin:0}
.ti-creative h1,.ti-creative h2,.ti-creative h3,.ti-creative figure,.ti-creative p{margin-top:0}
.ti-creative [hidden]{display:none!important}
.ti-creative img{display:block;width:100%;height:100%;object-fit:cover}
.ti-creative a{color:inherit}
.ti-creative .ti-d-brand-logo{width:auto;max-width:165px;max-height:65px;height:auto;object-fit:contain}
.ti-creative .ti-d-brand-name{font-weight:700;font-size:15px;letter-spacing:.1em}
.ti-creative .ti-d-image-empty{background:linear-gradient(120deg,#aeb8ad,#d0c9b6);width:100%;height:100%;min-height:200px}
.ti-creative .ti-d-eyebrow,.ti-creative .td-eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.ti-creative .ti-d-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:30px 6vw;border-top:1px solid currentColor;flex-wrap:wrap}
.ti-creative .ti-d-footer span{font-weight:700}.ti-creative .ti-d-footer small,.ti-creative .ti-d-footer em{font-size:11px;opacity:.7;font-style:normal}
.ti-creative .ti-d-intro p,.ti-creative .ti-d-contact p{white-space:pre-line;line-height:1.9}
.ti-creative .ti-d-calendar,.ti-creative .ti-d-link{display:inline-block;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding:10px 0}
.ti-creative .ti-d-schedule h2,.ti-creative .ti-d-venue h2,.ti-creative .ti-d-facts h2,.ti-creative .ti-d-faq h2,.ti-creative .ti-d-contact h2{font-size:clamp(29px,4vw,56px);line-height:1.1;margin:15px 0 30px}
.ti-creative .ti-d-agenda-item{display:grid;grid-template-columns:90px 18px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid rgba(128,128,128,.28);align-items:center}
.ti-creative .ti-d-agenda-item time{font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.07em;opacity:.78}
.ti-creative .ti-d-agenda-item strong{font-size:18px;font-weight:500}
.ti-creative .ti-d-agenda-line{display:block;width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.55}
.ti-creative .ti-d-fact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:22px}
.ti-creative .ti-d-fact-grid article{padding:25px;border:1px solid currentColor;border-color:rgba(128,128,128,.22)}
.ti-creative .ti-d-fact-grid h3{font-size:21px;font-weight:600;margin:8px 0}
.ti-creative .ti-d-fact-grid p{font-size:15px;line-height:1.75;margin-bottom:0}
.ti-creative .ti-d-detail-index{font-size:12px;opacity:.55}
.ti-creative .ti-d-faq-list details,.ti-creative .ti-d-faq-list article{padding:18px 0;border-bottom:1px solid rgba(128,128,128,.35)}
.ti-creative .ti-d-faq-list summary{cursor:pointer;font-weight:650;list-style-position:inside}
.ti-creative .ti-d-faq-list h3{font-size:18px;margin:0 0 10px}
.ti-creative .ti-d-faq-list p{font-size:15px;margin:12px 0 0;line-height:1.8}
.ti-creative .ti-d-countdown{padding:20px 0}.ti-creative .ti-count-display{font-size:clamp(23px,3vw,38px);margin:4px 0 14px}
.ti-creative .ti-d-rsvp{padding:90px 24px}
.ti-creative .ti-d-rsvp-inner{max-width:620px;margin:auto}
.ti-creative .ti-d-rsvp-inner>h2{font-size:clamp(34px,5vw,64px);line-height:1.1;margin:20px 0 32px}
.ti-creative .ti-d-rsvp form{display:grid;gap:18px}
.ti-creative .ti-d-rsvp label{display:grid;gap:7px;font-size:13px;font-weight:700}
.ti-creative .ti-d-rsvp input,.ti-creative .ti-d-rsvp select{width:100%;background:#fff;color:#242424;border:1px solid #aaa;border-radius:0;padding:15px;font:inherit}
.ti-creative .ti-d-rsvp button{padding:17px 28px;background:var(--ti-client-accent,#303d36);color:#fff;border:1px solid transparent;border-radius:0;font:700 13px Arial;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.ti-creative .ti-privacy{font-size:12px;opacity:.75}
.ti-creative a:focus-visible,.ti-creative button:focus-visible,.ti-creative summary:focus-visible{outline:3px solid #e89e58;outline-offset:4px}
/* 1. MODERN MINIMAL / Swiss grid / oversized type and asymmetric columns */
.ti-design-minimal{background:#f5f5f2!important;color:#181818!important}
.tdm-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:32px 5vw;border-bottom:1px solid #252525;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.tdm-top nav{display:flex;flex-wrap:wrap;gap:26px}.tdm-top nav a{text-decoration:none}.tdm-monogram{min-width:120px}
.tdm-hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:740px}.tdm-hero-type{padding:clamp(35px,6vw,100px);display:flex;flex-direction:column;justify-content:center}
.ti-design-minimal .tdm-hero h1{font:800 clamp(55px,7.8vw,125px)/.92 Arial,sans-serif;letter-spacing:-.085em;margin:30px 0;color:#141414;overflow-wrap:anywhere}
.tdm-hero-type>p{font-size:clamp(17px,2vw,28px);font-weight:400;max-width:440px}.tdm-hero-rule{border-top:1px solid #222;padding-top:22px;margin-top:65px;display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.08em}.tdm-hero-rule a{text-decoration:none}
.tdm-photo{height:100%;position:relative;min-height:600px;overflow:hidden}.tdm-photo img{filter:saturate(.7)}.tdm-photo figcaption{position:absolute;right:25px;bottom:24px;background:#fff;padding:12px;font:700 11px Arial;letter-spacing:.1em}
.tdm-rail{background:#111;color:#fff;display:flex;justify-content:space-between;gap:18px;padding:18px 5vw;font-size:10px;letter-spacing:.2em}
.tdm-intro-row{display:grid;grid-template-columns:30% 70%;padding:110px 8vw;border-bottom:1px solid #b5b5b5}.tdm-index{font-size:11px;letter-spacing:.13em;font-weight:700}
.tdm-intro p{font-size:clamp(26px,3.3vw,46px);line-height:1.42;letter-spacing:-.04em;max-width:850px}
.tdm-data{display:grid;grid-template-columns:1fr 1fr}.tdm-data-left{padding:100px 7vw;background:#e7e9e6}.tdm-data-left h2{font:700 clamp(35px,4vw,68px)/1.06 Arial;letter-spacing:-.06em;margin:35px 0}.tdm-data-right{padding:90px 7vw}
.tdm-bottom{display:grid;grid-template-columns:45% 55%;background:#e3e3df}.tdm-wide-image{min-height:730px}.tdm-bottom-copy{padding:80px 7vw}.tdm-bottom-copy>*{margin-bottom:60px}.tdm-bottom-copy .ti-d-fact-grid{grid-template-columns:1fr}
.ti-design-minimal .ti-d-rsvp{background:#151515;color:#fff}.ti-design-minimal .ti-d-rsvp input{color:#111}
/* 2. BLUSH CELEBRATION / playful scrapbook collage */
.ti-design-rose{background:#fff6f2!important;color:#743d53!important;font-family:Georgia,serif!important}
.tdr-nav{display:flex;align-items:center;justify-content:space-between;padding:22px 6vw;background:#f6dce2;gap:20px}.tdr-nav a{font:700 11px Arial;letter-spacing:.12em;text-decoration:none}
.tdr-hero{min-height:760px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:90px 8vw;background:#f6dce2;position:relative;overflow:hidden}
.tdr-bg-dot{position:absolute;width:45vw;height:45vw;border-radius:50%;background:#f1bfc9;top:-15vw;left:-18vw;opacity:.4}
.tdr-hero-left{position:relative;z-index:2}.tdr-hero h1{font:italic 400 clamp(65px,9vw,140px)/.96 Georgia,serif;letter-spacing:-.06em;color:#923955;margin:24px 0 30px}.tdr-hero-left p{font:italic 25px/1.4 Georgia}.tdr-date{font:700 13px Arial;letter-spacing:.13em;text-transform:uppercase}
.tdr-polaroid{background:#fff;padding:20px 20px 60px;box-shadow:0 22px 55px rgba(111,61,78,.15);transform:rotate(7deg);position:relative;z-index:1;text-align:center}.tdr-polaroid-img{height:470px;overflow:hidden}.tdr-polaroid>span{display:block;font:italic 24px Georgia;margin-top:22px}.tdr-sun{position:absolute;right:3vw;top:90px;font-size:100px;color:#f5a45b}
.tdr-ribbon{background:#bf7993;color:#fff;display:flex;justify-content:space-around;padding:17px 25px;gap:12px;font:700 12px Arial;letter-spacing:.15em}
.tdr-message{max-width:860px;text-align:center;margin:auto;padding:135px 24px}.tdr-scribble{font:italic 28px Georgia;color:#c48a97}.tdr-message h2{font:italic clamp(45px,6vw,78px)/1.1 Georgia;margin:15px 0 30px}.tdr-letter p{font-size:22px;line-height:1.8}.tdr-hearts{color:#bd6d89;font-size:23px;margin-top:40px}
.tdr-collage{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:3vw;background:#f4d5d7;padding:70px 10vw}.tdr-collage-photo{height:600px;transform:rotate(-4deg);border:18px solid white;box-shadow:15px 15px rgba(190,111,139,.17)}.tdr-collage-card{background:#fff8f0;padding:60px 30px;text-align:center;transform:rotate(3deg);display:flex;flex-direction:column;align-items:center}.tdr-collage-card>strong{font:italic 120px Georgia;line-height:1.1}.tdr-collage-card>span{letter-spacing:.14em}
.tdr-plans{padding:100px 8vw;text-align:center}.tdr-plans>h2{font:italic clamp(45px,6vw,80px) Georgia}.tdr-plans .ti-d-schedule>header{display:none}.tdr-plans .ti-d-agenda{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:60px}.tdr-plans .ti-d-agenda-item{display:flex;flex-direction:column;border:1px dashed #c68799;background:#fff;padding:40px 25px;min-height:170px;gap:9px}.tdr-plans .ti-d-agenda-line{display:none}
.tdr-places{display:grid;grid-template-columns:1fr 1.4fr;gap:6vw;padding:100px 8vw;background:#eecdd6;align-items:center}.tdr-questions{max-width:950px;margin:auto;padding:90px 30px}.tdr-questions>*{margin-bottom:70px}.ti-design-rose .ti-d-rsvp{background:#9f5978;color:#fff}
/* 3. PRIVATE DINNER / dark restaurant invitation and tasting menu */
.ti-design-dinner{background:#182e25!important;color:#f2ecdf!important;font-family:Georgia,serif!important}
.tdd-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 6vw;border-bottom:1px solid #8e8f78}.tdd-header nav{display:flex;gap:25px;flex-wrap:wrap}.tdd-header nav a,.tdd-header>span:last-child{font:11px Arial;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.tdd-split{display:grid;grid-template-columns:1fr 1fr;min-height:800px}.tdd-title-panel{padding:100px 7vw;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tdd-topmark,.tdd-small{font:11px Arial;letter-spacing:.22em}.tdd-topmark{color:#d2b896;margin-bottom:68px}
.tdd-title-panel h1{font:400 clamp(56px,7vw,113px)/1.05 Georgia,serif;color:#f6edd9;letter-spacing:-.05em;margin:25px 0}.tdd-line{height:1px;background:#b89d73;width:120px;margin:18px 0}.tdd-title-panel p{font:italic 24px Georgia}.tdd-when{margin:30px 0;letter-spacing:.07em}.tdd-enter{margin-top:30px;padding:15px 25px;border:1px solid #c4a97a;font:11px Arial;letter-spacing:.17em;text-decoration:none}
.tdd-image-pane{height:100%;position:relative;min-height:620px}.tdd-image-pane img{filter:brightness(.8) saturate(.72)}.tdd-image-pane figcaption{position:absolute;bottom:34px;left:35px;letter-spacing:.17em;font:11px Arial;color:#fff}
.tdd-manifesto{text-align:center;padding:135px 24px;max-width:930px;margin:auto}.tdd-asterisk{font-size:50px;color:#d0ac7f}.tdd-manifesto h2{font:italic clamp(42px,5vw,75px)/1.1 Georgia;margin:22px auto 36px}.tdd-intro p{font:19px/1.9 Georgia;color:#d8d4c7}
.tdd-menu{background:#f0e9d9;color:#273e31;display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:120px 10vw}.tdd-menu-heading>span{font:11px Arial;letter-spacing:.2em}.tdd-menu-heading h2{font:400 clamp(52px,6vw,93px)/.95 Georgia;margin:28px 0}.tdd-menu-heading h2 em{font-weight:normal}.tdd-menu .ti-d-schedule>header{display:none}.tdd-menu .ti-d-agenda-item{grid-template-columns:80px 1fr;gap:18px;border-bottom:1px dotted #66816d}.tdd-menu .ti-d-agenda-line{display:none}.tdd-menu .ti-d-agenda-item strong{font-family:Georgia;font-style:italic}
.tdd-venue-strip{display:grid;grid-template-columns:50% 50%;background:#112219}.tdd-venue-picture{height:550px}.tdd-venue-box{padding:80px 8vw;align-content:center}.tdd-venue-box h2{font:italic 46px Georgia}
.tdd-etiquette{padding:100px 10vw}.tdd-etiquette>h2{font:italic 60px Georgia}.tdd-etiquette .ti-d-fact-grid{margin:45px 0 75px}
.ti-design-dinner .ti-d-contact{padding:60px 10vw;text-align:center;background:#223a2c}
.ti-design-dinner .ti-d-rsvp{background:#e9e0d0;color:#203629}.ti-design-dinner .ti-d-rsvp button{background:#203629}
/* 4. CORPORATE / conference landing page, sharp grid and info architecture */
.ti-design-corporate{background:#f7f9fb!important;color:#182c43!important}
.tdc-header{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;padding:26px 6vw}.tdc-header nav{display:flex;gap:25px;flex-wrap:wrap}.tdc-header nav a{text-decoration:none;font-size:12px;font-weight:700}.tdc-invite{font:700 11px Arial;letter-spacing:.1em}
.tdc-hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:710px;background:#17334f;color:#fff}.tdc-hero-content{padding:clamp(50px,6vw,110px);align-self:center}.tdc-label{font:700 11px Arial;letter-spacing:.14em;color:#8dd5e0}.tdc-label i{display:inline-block;width:8px;height:8px;background:#8dd5e0;border-radius:100%;margin-right:8px}
.tdc-hero h1{font:700 clamp(53px,6.5vw,104px)/.99 Arial;letter-spacing:-.07em;margin:35px 0;color:#fff}.tdc-hero-content>p{font-size:clamp(19px,2vw,26px);max-width:470px;color:#e2eef9}
.tdc-data-strip{border-top:1px solid #5b758a;margin-top:55px;padding-top:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tdc-data-strip>div{display:flex;flex-direction:column}.tdc-data-strip small{color:#a7c9d9;font-size:10px;letter-spacing:.12em}.tdc-data-strip strong{font-size:14px;color:#fff}
.tdc-hero-img{position:relative;overflow:hidden}.tdc-hero-img img{filter:brightness(.85) saturate(.65)}.tdc-hero-angle{position:absolute;inset:auto 0 0 auto;width:35%;height:35%;background:#0d759a;clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.9}
.tdc-introduction{display:grid;grid-template-columns:27% 1fr;padding:125px 8vw;gap:30px}.tdc-section-label{font:700 11px Arial;letter-spacing:.12em;color:#557b95}.tdc-intro-main{max-width:890px}.tdc-intro-main h2{font:700 clamp(47px,5.5vw,85px)/1.04 Arial;letter-spacing:-.06em}.tdc-intro-text p{font-size:clamp(20px,2.5vw,31px);line-height:1.55}
.tdc-stats{display:grid;grid-template-columns:repeat(3,1fr);background:#e7eff5;padding:50px 8vw;gap:30px}.tdc-stats>div{font:700 53px Arial;color:#28688c}.tdc-stats span{display:block;font:700 11px Arial;letter-spacing:.1em;color:#284257}
.tdc-agenda{display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:110px 8vw}.tdc-agenda-head>h2{font:700 clamp(45px,5vw,80px)/1 Arial;letter-spacing:-.065em;margin:25px 0}.tdc-agenda .ti-d-schedule>header{display:none}
.tdc-utility{background:#1c3b56;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:100px 8vw}.tdc-utility h2,.tdc-utility h3{color:#fff}.tdc-facts-col .ti-d-fact-grid{grid-template-columns:1fr}
.tdc-last{display:grid;grid-template-columns:1.5fr .5fr;gap:6vw;padding:95px 8vw}.tdc-last h2{font:700 45px Arial;letter-spacing:-.05em}.ti-design-corporate .ti-d-rsvp{background:#dde9f1}.ti-design-corporate .ti-d-rsvp button{background:#1c527e}
/* 5. MIDNIGHT GALA / formal framed invitation, gold-on-black theatre */
.ti-design-gala{background:#151412!important;color:#e9dec7!important;font-family:Georgia,serif!important}
.tdg-frame{margin:26px;border:1px solid #9c8358;outline:1px solid #5c4f38;outline-offset:-10px}.tdg-header{display:flex;justify-content:space-between;padding:40px 7vw;color:#c8aa79}.tdg-header>span{font-size:30px}
.tdg-hero{min-height:700px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:17px;padding:55px 25px}.tdg-gold-line{height:1px;width:180px;background:#aa8d56;margin:15px 0}.tdg-hero h1{font:400 clamp(65px,8vw,137px)/1.07 Georgia;letter-spacing:-.052em;color:#e8d7b5;margin:0;max-width:1100px}.tdg-hero>p{font:italic clamp(23px,2.6vw,35px) Georgia;color:#e9dcc1}.tdg-stars{font-size:17px;color:#b89b70}.tdg-hero time{font-size:18px;letter-spacing:.13em}.tdg-clock{font:11px Arial;letter-spacing:.18em}.tdg-hero>a{font:11px Arial;letter-spacing:.15em;text-decoration:none;margin:25px 0}
.tdg-overture{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.tdg-overture figure{margin:0;min-height:650px}.tdg-overture figure img{filter:saturate(.45) brightness(.7)}.tdg-overture-copy{padding:90px 8vw;background:#26221c;align-content:center}.tdg-overture-copy h2{font:400 clamp(40px,5vw,75px)/1.16 Georgia;color:#e9dcc0}.tdg-intro p{font:18px/1.85 Georgia;color:#d4c8b5}
.tdg-program{text-align:center;padding:130px 24px}.tdg-program>h2{font:400 clamp(45px,5vw,76px) Georgia}.tdg-program-card{max-width:730px;margin:60px auto;border:1px solid #927952;padding:55px 65px}.tdg-program-card .ti-d-schedule header{display:none}.tdg-program .ti-d-agenda-item{border-color:#6f624a}
.tdg-location{text-align:center;background:#29251f;padding:100px 24px}.tdg-line-art{font-size:75px;color:#c0a271}.tdg-location h2{font:italic 57px Georgia}.tdg-location .ti-d-calendar{margin-top:28px}
.tdg-practical{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:90px 8vw}.tdg-practical .ti-d-fact-grid{grid-template-columns:1fr}
.ti-design-gala .ti-d-contact{text-align:center;padding:85px 20px;background:#222019}.ti-design-gala .ti-d-rsvp{background:#d8c7a4;color:#2a2318}.ti-design-gala .ti-d-rsvp button{background:#4b3824}
/* 6. FASHION EDITORIAL / magazine cover & aggressive asymmetric type */
.ti-design-fashion{background:#fafaf8!important;color:#111!important}
.tdf-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 5vw;border-bottom:3px solid #111}.tdf-top a,.tdf-edition{font:700 11px Arial;letter-spacing:.12em;text-decoration:none}.tdf-logo{font-size:24px}
.tdf-cover{display:grid;grid-template-columns:1fr 1.1fr;position:relative;min-height:800px}.tdf-cover-heading{padding:90px 5vw 80px;display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:2}.tdf-issue{font:700 12px Arial;letter-spacing:.15em}.tdf-cover h1{font:900 clamp(70px,10vw,170px)/.87 Arial;letter-spacing:-.09em;text-transform:uppercase;overflow-wrap:anywhere;color:#0b0b0b;margin:60px 0}.tdf-index{font:700 15px Arial}.tdf-photo{margin:0;min-height:710px;overflow:hidden}.tdf-photo img{filter:saturate(.6) contrast(1.1)}.tdf-vertical{position:absolute;bottom:25px;right:30px;background:white;padding:10px 15px;font:700 11px Arial;letter-spacing:.1em}
.tdf-marquee{background:#111;color:#fff;font:900 clamp(20px,3vw,40px)/1 Arial;letter-spacing:-.04em;white-space:nowrap;overflow:hidden;padding:19px 0;text-align:center}
.tdf-editorial{display:grid;grid-template-columns:.4fr .6fr;gap:6vw;padding:140px 8vw}.tdf-editorial-index{font:700 12px Arial;letter-spacing:.1em}.tdf-editorial h2{font:800 clamp(46px,6vw,85px)/.95 Arial;text-transform:uppercase;letter-spacing:-.07em}.tdf-intro p{font-size:21px;line-height:1.7}
.tdf-image-tape{display:grid;grid-template-columns:1.25fr .75fr;min-height:620px;background:#e5e5e2}.tdf-image-tape-img{height:620px}.tdf-image-tape>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:7vw}.tdf-image-tape span{font:700 13px Arial;letter-spacing:.12em}.tdf-image-tape strong{font:900 clamp(65px,7vw,120px)/1 Arial;letter-spacing:-.08em}.tdf-image-tape small{font-size:20px}
.tdf-lineup{padding:130px 8vw}.tdf-lineup>h2{font:900 clamp(55px,9vw,130px)/.9 Arial;letter-spacing:-.09em}.tdf-lineup .ti-d-schedule>header{display:none}.tdf-lineup .ti-d-agenda-item{grid-template-columns:100px 1fr;border-bottom:2px solid #111;padding:28px 0}.tdf-lineup .ti-d-agenda-line{display:none}.tdf-lineup .ti-d-agenda-item strong{font:700 clamp(23px,3vw,43px)/1.1 Arial;text-transform:uppercase}
.tdf-information{display:grid;grid-template-columns:.85fr 1.15fr;background:#171717;color:#fff;gap:6vw;padding:110px 8vw}.tdf-notes .ti-d-facts{margin-bottom:60px}.ti-design-fashion .ti-d-contact{padding:65px 8vw;background:#eee}.ti-design-fashion .ti-d-rsvp{background:#f5f39a}.ti-design-fashion .ti-d-rsvp button{background:#111}
/* 7. NEON NIGHTS / gig poster, huge display letters, club-program grid */
.ti-design-music{background:#0e0823!important;color:#f8f5ff!important;font-family:Arial,sans-serif!important}
.tdn-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px 5vw;font:700 12px Arial;letter-spacing:.12em;background:#100725;color:#fff}.tdn-top .ti-d-brand-name{color:#c7f920}
.tdn-poster{height:min(94svh,920px);min-height:690px;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 80% 10%,#571fc0,#1c0a42 60%,#0a051b)}
.tdn-poster-img{position:absolute;inset:0;z-index:-2;opacity:.7}.tdn-poster-img img{filter:saturate(1.1) contrast(1.25) brightness(.5)}.tdn-beam{position:absolute;inset:0;background:linear-gradient(135deg,rgba(90,30,207,.64),transparent 50%,rgba(23,240,224,.21));z-index:-1}
.tdn-poster-overlay{padding:60px 5vw;width:100%}.tdn-poster-overlay>span{font:700 13px Arial;letter-spacing:.27em;color:#c8fb28}.tdn-poster h1{font:900 clamp(75px,12.5vw,210px)/.86 Arial;letter-spacing:-.09em;text-transform:uppercase;color:#fff;margin:50px auto;max-width:1500px;text-shadow:8px 8px 0 #711acb;overflow-wrap:anywhere}.tdn-poster-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px auto;max-width:1000px;border-top:1px solid #b9fd3e;padding:25px 0}.tdn-poster-footer p{font-size:20px;font-weight:700;text-align:left}.tdn-poster-footer strong{font:900 clamp(25px,4vw,55px) Arial;color:#c5f72a;white-space:nowrap}.tdn-poster-footer small{color:#fff}
.tdn-ticker{background:#c4fc22;color:#120c29;font:900 clamp(23px,3vw,45px)/1 Arial;overflow:hidden;white-space:nowrap;padding:22px 0;text-align:center;letter-spacing:-.035em}
.tdn-description{padding:115px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.tdn-description>div>span{font-size:12px;letter-spacing:.1em;color:#c8fb28}.tdn-description h2{font:900 clamp(60px,7.5vw,125px)/.9 Arial;letter-spacing:-.08em;margin:30px 0}.tdn-description h2 span{color:#c8fb28}.tdn-intro p{font:22px/1.6 Arial;color:#d7cdee}
.tdn-lineup{background:#240e52;padding:100px 8vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw}.tdn-lineup-head span{color:#c7f921;font-size:12px}.tdn-lineup-head h2{font:900 clamp(60px,8vw,135px)/.9 Arial;letter-spacing:-.09em}.tdn-lineup .ti-d-schedule header{display:none}.tdn-lineup .ti-d-agenda-item{border-color:#8f5bcc;grid-template-columns:90px 1fr}.tdn-lineup .ti-d-agenda-item strong{font:800 27px Arial;text-transform:uppercase}.tdn-lineup .ti-d-agenda-line{display:none}
.tdn-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:110px 8vw}.tdn-venue h2,.tdn-essentials h2{font:900 50px Arial;text-transform:uppercase}.tdn-faq{display:grid;grid-template-columns:1fr 1fr;background:#140b2e;gap:6vw;padding:90px 8vw}
.ti-design-music .ti-d-rsvp{background:#c5fb2e;color:#151023}.ti-design-music .ti-d-rsvp button{background:#24114d}
/* 8. GALLERY EDITION / airy museum site with whitespace, artwork wall */
.ti-design-art{background:#f2f1eb!important;color:#343b32!important;font-family:Georgia,serif!important}
.tda-header{display:flex;justify-content:space-between;align-items:center;padding:30px 6vw;gap:25px;border-bottom:1px solid #8f9689}.tda-header nav{display:flex;gap:28px}.tda-header nav a{text-decoration:none;font:700 10px Arial;letter-spacing:.14em}.tda-icon{font-size:30px}
.tda-edition{display:flex;justify-content:space-between;padding:30px 6vw;font:11px Arial;letter-spacing:.13em}
.tda-cover{display:grid;grid-template-columns:1fr 1fr;padding:30px 7vw 130px;gap:8vw;min-height:790px}.tda-cover-copy{display:flex;flex-direction:column;justify-content:center}.tda-index{font:700 11px Arial;letter-spacing:.12em}.tda-cover h1{font:400 clamp(68px,8vw,135px)/1.02 Georgia;letter-spacing:-.06em;margin:60px 0;color:#28372c;overflow-wrap:anywhere}.tda-divider{width:120px;height:1px;background:#7c8e80}.tda-cover-copy>p{font:italic 26px Georgia;margin-top:30px}.tda-cover-copy time{font:11px Arial;letter-spacing:.12em;margin-top:30px}
.tda-cover-art{height:690px;position:relative;margin:0;box-shadow:25px 30px 0 #dedfd6}.tda-cover-art img{filter:saturate(.68)}.tda-cover-art figcaption{position:absolute;bottom:-56px;left:0;font:11px Arial;letter-spacing:.12em}
.tda-curator{display:grid;grid-template-columns:.3fr .7fr;padding:135px 9vw;border-top:1px solid #aeb5a6;gap:6vw}.tda-section-marker{font:11px Arial;letter-spacing:.14em}.tda-curator h2{font:400 clamp(50px,6vw,90px)/1.05 Georgia}.tda-intro{grid-column:2}.tda-intro p{font-size:22px;line-height:1.8}
.tda-wall{max-width:1100px;margin:30px auto 150px;padding:0 30px}.tda-wall-image{height:640px;background:#ddd7cb;border:25px solid #fff;box-shadow:0 25px 70px rgba(30,30,20,.14)}.tda-wall-caption{text-align:right;font:11px Arial;letter-spacing:.14em;margin-top:25px}
.tda-visit{background:#dfe6dc;display:grid;grid-template-columns:.2fr 1fr .45fr;gap:5vw;align-items:center;padding:110px 9vw}.tda-visit-no{font:400 90px Georgia;opacity:.4}.tda-visit-date{display:flex;flex-direction:column;text-align:center;border-left:1px solid #aeb8aa}.tda-visit-date>span{font:11px Arial;letter-spacing:.12em}.tda-visit-date strong{font:140px/1 Georgia}.tda-visit-date small{font:18px Georgia}
.tda-program{padding:125px 9vw;display:grid;grid-template-columns:.35fr .65fr;gap:5vw}.tda-program .ti-d-schedule header{display:block}.tda-program .ti-d-schedule h2{font:400 65px Georgia}.tda-other{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:110px 9vw;background:#e8e9df}.tda-other .ti-d-fact-grid{grid-template-columns:1fr}
.ti-design-art .ti-d-rsvp{background:#526a52;color:#fff}.ti-design-art .ti-d-rsvp button{background:#183921}
/* 9. GOLDEN MOMENTS / warm keepsake book with offset snapshots and chapter typography */
.ti-design-terracotta{background:#f7efe3!important;color:#673b2b!important;font-family:Georgia,serif!important}
.tdt-header{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px 6vw}.tdt-header span,.tdt-header a{font:700 11px Arial;letter-spacing:.13em;text-decoration:none}
.tdt-hero{min-height:790px;position:relative;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:2vw;padding:90px 10vw;overflow:hidden}.tdt-hero-back{position:absolute;inset:50px 4vw;background:#eac8a9;border-radius:48% 52% 47% 53% / 40% 44% 56% 60%;opacity:.58}.tdt-photo-one{position:relative;z-index:1;height:610px;transform:rotate(-4deg);padding:17px 17px 65px;background:white;box-shadow:17px 23px 0 rgba(151,89,62,.15)}.tdt-photo-one img{filter:sepia(.18) saturate(.86)}.tdt-hero-title{position:relative;z-index:2;padding:55px 0 55px 30px}.tdt-hero-title>span{font:700 12px Arial;letter-spacing:.19em}.tdt-hero h1{font:italic clamp(67px,8vw,140px)/.96 Georgia;letter-spacing:-.06em;margin:25px 0;color:#83472d;overflow-wrap:anywhere}.tdt-hero-title p{font:italic 26px Georgia;line-height:1.4}.tdt-date{font:700 12px Arial;letter-spacing:.1em;margin-top:40px}.tdt-stamp{position:absolute;right:2vw;bottom:65px;border-radius:50%;background:#a85f43;color:white;width:125px;height:125px;display:grid;place-items:center;transform:rotate(12deg);text-align:center;line-height:1.25;font:700 15px Arial}
.tdt-memory-bar{background:#b5775a;color:#fff;display:flex;justify-content:space-around;gap:25px;padding:19px;font:700 11px Arial;letter-spacing:.2em}
.tdt-letter{text-align:center;max-width:920px;margin:auto;padding:135px 30px}.tdt-number{font:700 11px Arial;letter-spacing:.2em;color:#b27b59}.tdt-letter>h2{font:italic clamp(49px,6vw,83px) Georgia;margin:30px 0}.tdt-intro p{font-size:23px;line-height:1.8}.tdt-script{font:italic 30px Georgia;color:#b4805d;margin-top:45px}
.tdt-memory-grid{display:grid;grid-template-columns:1.2fr .8fr;background:#e4d0b8;padding:85px 10vw;gap:5vw;align-items:center}.tdt-memory-picture{height:570px;border:14px solid #fff;transform:rotate(3deg);box-shadow:14px 15px 0 rgba(130,85,62,.16)}.tdt-memory-date{text-align:center;display:flex;flex-direction:column;align-items:center}.tdt-memory-date>span{font:700 11px Arial;letter-spacing:.12em}.tdt-memory-date>strong{font:normal 145px Georgia;line-height:1}.tdt-memory-date>small{font:24px Georgia}
.tdt-program{padding:130px 9vw;text-align:center}.tdt-program>h2{font:italic 75px Georgia;margin:20px 0}.tdt-program .ti-d-schedule>header{display:none}.tdt-program .ti-d-agenda{max-width:770px;margin:auto}.tdt-program .ti-d-agenda-item strong{font:italic 24px Georgia}
.tdt-location{background:#e5c3a8;padding:100px 9vw;display:grid;grid-template-columns:.25fr .85fr 1fr;gap:5vw}.tdt-location-decoration{font-size:90px;color:#a16446}.tdt-location .ti-d-fact-grid{grid-template-columns:1fr}.tdt-faq{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:105px 9vw}
.ti-design-terracotta .ti-d-rsvp{background:#a25e43;color:#fff}.ti-design-terracotta .ti-d-rsvp button{background:#432b23}
/* Device adjustments specific to the new compositions */
@media(max-width:1000px){
.tdm-hero,.tdd-split,.tdc-hero,.tdf-cover,.tda-cover{grid-template-columns:1fr 1fr}
.tdm-hero h1{font-size:70px}.tdf-cover h1{font-size:75px}.tdn-poster h1{font-size:95px}
.tdc-data-strip{grid-template-columns:1fr 1fr}
.tdr-polaroid-img{height:360px}
}
@media(max-width:760px){
.tdm-top,.tdd-header,.tdc-header,.tda-header{flex-wrap:wrap;gap:20px}.tdm-top nav,.tdd-header nav,.tdc-header nav,.tda-header nav{gap:13px}
.tdm-hero,.tdm-intro-row,.tdm-data,.tdm-bottom,.tdr-hero,.tdr-collage,.tdr-places,.tdd-split,.tdd-menu,.tdd-venue-strip,.tdc-hero,.tdc-introduction,.tdc-agenda,.tdc-utility,.tdc-last,.tdg-overture,.tdg-practical,.tdf-cover,.tdf-editorial,.tdf-image-tape,.tdf-information,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq,.tda-cover,.tda-curator,.tda-visit,.tda-program,.tda-other,.tdt-hero,.tdt-memory-grid,.tdt-location,.tdt-faq{grid-template-columns:1fr}
.tdm-hero{min-height:auto}.tdm-hero-type{padding:75px 7vw}.tdm-photo{height:460px;min-height:0}.tdm-intro-row,.tdc-introduction{padding:70px 7vw}.tdm-data-left,.tdm-data-right,.tdm-bottom-copy{padding:65px 7vw}.tdm-wide-image{height:380px;min-height:0}
.tdr-hero{gap:50px;padding:75px 10vw}.tdr-polaroid{max-width:480px;margin:auto}.tdr-collage{padding:75px 11vw}.tdr-collage-photo{height:420px}.tdr-collage-card{max-width:460px;margin:auto;width:100%}.tdr-places,.tdr-plans{padding:75px 8vw}
.tdd-title-panel{min-height:650px}.tdd-image-pane{min-height:470px;height:470px}.tdd-menu,.tdd-etiquette{padding:80px 8vw}.tdd-venue-picture{height:420px}.tdd-venue-box{padding:70px 8vw}
.tdc-hero-img{height:420px;order:-1}.tdc-hero-content{padding:70px 8vw}.tdc-stats{gap:15px;padding:35px 7vw}.tdc-stats>div{font-size:32px}.tdc-agenda,.tdc-utility,.tdc-last{padding:80px 8vw}
.tdg-frame{margin:12px}.tdg-hero{min-height:660px}.tdg-overture figure{min-height:440px;height:440px}.tdg-overture-copy{padding:70px 8vw}.tdg-program-card{padding:35px 22px}.tdg-practical{padding:80px 8vw}
.tdf-cover-heading{min-height:470px;padding:70px 7vw}.tdf-photo{min-height:520px;height:520px}.tdf-image-tape-img{height:440px}.tdf-image-tape>div:last-child{padding:65px 8vw}.tdf-editorial,.tdf-lineup,.tdf-information{padding:90px 8vw}
.tdn-poster{height:auto;min-height:700px}.tdn-poster h1{font-size:clamp(60px,12vw,110px)}.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq{padding:75px 7vw}
.tda-cover{min-height:auto;padding:50px 7vw 90px}.tda-cover h1{margin:35px 0}.tda-cover-art{height:560px}.tda-curator,.tda-program,.tda-other{padding:90px 7vw}.tda-intro{grid-column:1}.tda-wall-image{height:450px}.tda-visit{padding:80px 7vw}.tda-visit-date{border-left:0;border-top:1px solid #aaa;padding-top:30px}
.tdt-hero{min-height:0;padding:70px 9vw}.tdt-photo-one{height:450px;max-width:520px}.tdt-hero-title{padding:25px 0}.tdt-stamp{right:7vw;bottom:30px;width:90px;height:90px;font-size:12px}.tdt-memory-grid,.tdt-program,.tdt-location,.tdt-faq{padding:75px 8vw}.tdt-memory-picture{height:390px}.tdt-location-decoration{font-size:55px}
}
@media(max-width:480px){
.ti-creative .ti-d-rsvp{padding:60px 20px}.ti-creative .ti-d-footer{flex-direction:column;text-align:center}
.tdm-rail>span:last-child,.tdm-no,.tdr-sun,.tdf-vertical,.tdt-stamp{display:none}.tdm-hero h1,.tdf-cover h1,.tda-cover h1{font-size:clamp(52px,13vw,75px)}
.tdr-hero h1,.tdt-hero h1{font-size:clamp(56px,13vw,78px)}.tdr-polaroid-img{height:290px}.tdr-collage-card>strong{font-size:90px}
.tdd-title-panel h1,.tdg-hero h1{font-size:clamp(58px,12vw,90px)}.tdg-header{padding:25px}.tdg-hero{padding:40px 15px}
.tdc-hero h1,.tdn-lineup-head h2{font-size:clamp(50px,11vw,70px)}.tdc-data-strip{grid-template-columns:1fr}
.tdn-poster-footer{flex-direction:column}.tdn-poster-footer p{text-align:center}.tdn-top{padding:20px;flex-wrap:wrap}
.tda-cover-art{height:430px}.tda-wall-image{height:310px}.tda-visit-date strong{font-size:85px}
.tdt-photo-one{height:330px}.tdt-memory-picture{height:310px}
}

.ti-extra-photos{padding:22px;margin:25px 0;background:#f4f1eb;border:1px solid #e2dace;border-radius:10px}.ti-extra-photos h2{margin:0 0 7px}.ti-extra-photos>p{max-width:760px;color:#605d58}.ti-extra-photos label span{display:block;margin-top:8px;font-size:12px}

/* Public design gallery: actual photos and correctly contrasted titles */
.ti-demo-gallery .ti-demo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(275px,100%),1fr));gap:25px}
.ti-demo-gallery .ti-demo-card{overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.08)}
.ti-demo-gallery a.ti-demo-cover-photographic{display:flex;position:relative;min-height:370px;flex-direction:column;justify-content:end;align-items:start;padding:28px;gap:6px;color:#fff!important;text-decoration:none!important;background-size:cover;background-position:center}
.ti-demo-gallery .ti-demo-darken{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.78));z-index:0}
.ti-demo-gallery .ti-demo-cover-photographic>:not(.ti-demo-darken){z-index:1;position:relative;color:#fff!important;text-align:left}
.ti-demo-gallery .ti-demo-cover-photographic strong{display:block;font:500 clamp(31px,4vw,45px)/1.04 Georgia,serif;letter-spacing:-.04em;max-width:95%}
.ti-demo-gallery .ti-gallery-design-minimal strong,.ti-demo-gallery .ti-gallery-design-corporate strong,.ti-demo-gallery .ti-gallery-design-fashion strong,.ti-demo-gallery .ti-gallery-design-music strong{font-family:Arial,Helvetica,sans-serif;font-weight:850;text-transform:uppercase;letter-spacing:-.07em}
.ti-demo-gallery .ti-gallery-design-rose strong,.ti-demo-gallery .ti-gallery-design-terracotta strong{font-style:italic}
.ti-demo-gallery .ti-gallery-design-gala .ti-demo-cover-photographic,.ti-demo-gallery .ti-gallery-design-dinner .ti-demo-cover-photographic{box-shadow:inset 0 0 0 8px rgba(255,244,214,.2)}
.ti-demo-gallery .ti-demo-card-bottom{padding:22px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.ti-demo-gallery .ti-demo-card-bottom a{white-space:nowrap;font-size:12px}
/* Mini previews of different compositions, not merely colored swatches */
.ti-design-tile .ti-design-swatch{position:relative;overflow:hidden}
.ti-design-tile .ti-design-swatch::after{content:'';position:absolute;right:10%;top:15%;height:65%;width:38%;border-radius:2px;background:linear-gradient(145deg,rgba(255,255,255,.45),rgba(255,255,255,.05));box-shadow:0 5px 12px rgba(0,0,0,.15)}
.ti-design-tile.ti-theme-minimal .ti-design-swatch::after,.ti-design-tile.ti-theme-corporate .ti-design-swatch::after,.ti-design-tile.ti-theme-fashion .ti-design-swatch::after{right:0;top:0;width:45%;height:100%;border-radius:0}
.ti-design-tile.ti-theme-rose .ti-design-swatch::after,.ti-design-tile.ti-theme-terracotta .ti-design-swatch::after{transform:rotate(11deg);background:#f7e8dc}
.ti-design-tile.ti-theme-gala .ti-design-swatch::after{right:7%;top:7%;width:86%;height:86%;background:none;border:1px solid #b7a078;box-shadow:none}
.ti-design-tile.ti-theme-music .ti-design-swatch::after{transform:skew(-12deg);background:linear-gradient(160deg,#774ee0,#ccfa35)}
.ti-design-tile.ti-theme-art .ti-design-swatch::after{right:23%;top:13%;height:72%;width:50%;border:9px solid #e6e3da;background:#738476}
.ti-design-picker .ti-layout-note{font-size:12px;color:#77716a;margin:15px 0 0;line-height:1.6}

/* v0.3.7: Keep narrow editorial grids and oversized headlines within the viewport. */
@media (max-width: 360px) {
  .ti-creative.ti-design-fashion .tdf-editorial > *,
  .ti-creative.ti-design-fashion .tdf-image-tape > *,
  .ti-creative.ti-design-music .tdn-lineup > * { min-width:0; max-width:100%; }
  .ti-creative.ti-design-fashion .tdf-editorial-index { overflow-wrap:anywhere; letter-spacing:0; font-size:11px; }
  .ti-creative.ti-design-fashion .tdf-marquee > span { display:inline-block; max-width:100%; white-space:normal; font-size:clamp(20px,6vw,30px); overflow-wrap:anywhere; }
  .ti-creative.ti-design-music .tdn-lineup-head h2 { font-size:clamp(31px,9vw,48px); letter-spacing:-.06em; overflow-wrap:anywhere; }
}
@media (max-width: 360px) {
  .ti-creative.ti-design-fashion .ti-d-agenda-item {grid-template-columns:52px 8px minmax(0,1fr);gap:7px;min-width:0}
  .ti-creative.ti-design-music .tdn-lineup .ti-d-agenda-item {grid-template-columns:52px minmax(0,1fr);gap:7px;min-width:0}
  .ti-creative.ti-design-fashion .ti-d-agenda-item strong,
  .ti-creative.ti-design-music .ti-d-agenda-item strong {font-size:15px;overflow-wrap:anywhere;min-width:0}
}
@media (max-width: 360px) {
  .ti-creative.ti-design-fashion .tdf-editorial h2,
  .ti-creative.ti-design-fashion .tdf-lineup > h2 {font-size:clamp(28px,9vw,40px);letter-spacing:-.04em;overflow-wrap:anywhere}
}
@media (max-width: 360px) {
  /* Prevent two-pixel font rounding in the gallery programme from creating page-level horizontal scrolling. */
  .ti-creative.ti-design-art .tda-program {overflow-x:clip}
}


/* 0.3.8: Shared sticky header support for every independently authored design.
   The offset accounts for the WordPress admin toolbar when logged in. */
.ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header){position:sticky;top:0;z-index:1000;isolation:isolate;}
.ti-design-minimal .tdm-top{background:#f5f5f2}
.ti-design-dinner .tdd-header{background:#182e25}
.ti-design-gala .tdg-header{background:#151412}
.ti-design-fashion .tdf-top{background:#fafaf8}
.ti-design-music .tdn-top{background:#100725}
.ti-design-art .tda-header{background:#f2f1eb}
.ti-design-terracotta .tdt-header{background:#f7efe3}
body.admin-bar.ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header){top:32px}
@media(max-width:782px){body.admin-bar.ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header){top:46px}}
/* Maintain legible foreground colors in explicitly dark design surfaces. */
.ti-creative :is(.tdd-header,.tdd-title-panel,.tdd-manifesto,.tdd-venue-strip,.tdd-etiquette,.tdg-header,.tdg-hero,.tdg-overture-copy,.tdg-program,.tdg-location,.tdg-practical,.tdn-top,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq,.tdf-information,.tdc-utility,.ti-d-footer){color:inherit}
.ti-design-dinner :is(.tdd-header,.tdd-title-panel,.tdd-manifesto,.tdd-venue-strip,.tdd-etiquette,.ti-d-contact),
.ti-design-gala :is(.tdg-header,.tdg-hero,.tdg-overture-copy,.tdg-program,.tdg-location,.tdg-practical,.ti-d-contact),
.ti-design-music :is(.tdn-top,.tdn-poster-overlay,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq),
.ti-design-fashion .tdf-information,
.ti-design-corporate .tdc-utility{color:#f5efe3}
.ti-design-music :is(.tdn-top,.tdn-poster-overlay,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq){color:#f8f5ff}
.ti-design-corporate .tdc-utility{color:#fff}
.ti-design-dinner :is(.tdd-header,.tdd-title-panel,.tdd-manifesto,.tdd-venue-strip,.tdd-etiquette,.ti-d-contact) :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-gala :is(.tdg-header,.tdg-hero,.tdg-overture-copy,.tdg-program,.tdg-location,.tdg-practical,.ti-d-contact) :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-music :is(.tdn-top,.tdn-poster-overlay,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq) :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-fashion .tdf-information :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-corporate .tdc-utility :is(h1,h2,h3,p,strong,span,a,summary,time,small,label){color:inherit}
/* Exclude intentionally light inset cards from dark-section inheritance. */
.ti-design-dinner .tdd-menu,.ti-design-dinner .ti-d-rsvp,
.ti-design-gala .ti-d-rsvp,
.ti-design-music .ti-d-rsvp{color:#23352a}
.ti-design-dinner .tdd-menu :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-dinner .ti-d-rsvp :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-gala .ti-d-rsvp :is(h1,h2,h3,p,strong,span,a,summary,time,small,label),
.ti-design-music .ti-d-rsvp :is(h1,h2,h3,p,strong,span,a,summary,time,small,label){color:inherit}
.ti-design-gala .ti-d-rsvp{color:#2a2318}
.ti-design-music .ti-d-rsvp{color:#151023}

/* 0.6.6: Responsive hardening across all ten public event designs.
   Applies identically to live events and the seeded demos. */
@media(max-width:760px){
  body.ti-creative{width:100%;max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
  .ti-creative *, .ti-creative *::before, .ti-creative *::after{box-sizing:border-box}
  .ti-creative :is(main,header,nav,section,article,aside,figure,footer){max-width:100%;min-width:0}
  .ti-creative :is(h1,h2,h3,h4,p,blockquote,span,strong,a,small,figcaption,li){overflow-wrap:anywhere}
  .ti-creative img,.ti-creative video,.ti-creative svg{max-width:100%;height:auto}
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header){
    min-height:0!important;height:auto!important;padding:12px 17px!important;gap:9px 14px!important;
    align-items:center;box-shadow:0 2px 12px rgba(0,0,0,.06)
  }
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) :is(a,span,small,strong){line-height:1.3}
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) nav{
    display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px 13px!important;
    width:auto;min-width:0;max-width:100%;margin:0;padding:0
  }
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) nav a{
    font-size:11px!important;letter-spacing:.04em!important;white-space:normal;min-height:30px;
    display:inline-flex;align-items:center;padding:3px 0
  }
  .ti-creative :is(.tdm-hero h1,.tdr-hero h1,.tdd-title-panel h1,.tdc-hero h1,.tdg-hero h1,.tdf-cover h1,.tdn-poster h1,.tda-cover h1,.tdt-hero h1){
    font-size:clamp(38px,10.6vw,76px)!important;line-height:1.02!important;letter-spacing:-.045em!important;
    max-width:100%;overflow-wrap:anywhere;word-break:normal
  }
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) :is(h1,h2){font-size:clamp(17px,5vw,24px)!important;margin:0}
  .ti-creative :is(.tdm-intro-row,.tdm-data,.tdm-bottom,.tdr-collage,.tdr-places,.tdd-menu,.tdd-venue-strip,.tdc-introduction,.tdc-agenda,.tdc-utility,.tdc-last,.tdg-overture,.tdg-practical,.tdf-editorial,.tdf-image-tape,.tdf-information,.tdn-description,.tdn-lineup,.tdn-bottom-grid,.tdn-faq,.tda-cover,.tda-curator,.tda-program,.tda-other,.tdt-memory-grid,.tdt-location,.tdt-faq)>*{min-width:0;max-width:100%}
  .ti-creative :is(.ti-d-fact-grid,.ti-d-agenda-item,.ti-d-rsvp form){max-width:100%;min-width:0}
  .ti-creative :is(.ti-d-rsvp input,.ti-d-rsvp select,.ti-d-rsvp textarea){max-width:100%;min-width:0;font-size:16px}
  .ti-design-fashion .tdf-marquee,.ti-design-music .tdn-ticker{white-space:normal!important;overflow-wrap:anywhere;text-align:center}
  .ti-design-fashion .tdf-marquee span{white-space:normal!important}
  .ti-design-music .tdn-poster-footer strong{white-space:normal!important}
  .ti-design-terracotta .tdt-photo-one,.ti-design-rose .tdr-polaroid{max-width:min(100%,480px);min-width:0}
}
@media(max-width:480px){
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header){padding:9px 12px!important;gap:6px 10px!important}
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) nav{gap:2px 11px!important}
  .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) nav a{font-size:10px!important;min-height:26px}
  .ti-creative :is(.tdm-hero h1,.tdr-hero h1,.tdd-title-panel h1,.tdc-hero h1,.tdg-hero h1,.tdf-cover h1,.tdn-poster h1,.tda-cover h1,.tdt-hero h1){font-size:clamp(35px,10.5vw,50px)!important}
  .ti-design-music .tdn-poster{min-height:0!important;padding:72px 10px 45px}
  .ti-design-music .tdn-poster-overlay{padding:30px 14px!important}
  .ti-design-music .tdn-poster h1{margin:24px 0!important;text-shadow:3px 3px 0 #711acb}
  .ti-design-dinner .tdd-title-panel{min-height:0;padding:60px 7vw}
  .ti-design-gala .tdg-hero{min-height:0;padding:50px 16px}
  .ti-design-fashion .tdf-cover-heading{min-height:0;padding:55px 7vw}
  .ti-design-terracotta .tdt-hero{padding:50px 7vw}
  .ti-design-art .tda-cover{padding:38px 6vw 70px}
  .ti-design-rose .tdr-hero{padding:55px 7vw}
  .ti-creative :is(.ti-d-agenda-item,.ti-d-fact-grid>*,.ti-d-rsvp-inner){min-width:0}
}
@media(max-width:360px){
 .ti-creative :is(.tdm-hero h1,.tdr-hero h1,.tdd-title-panel h1,.tdc-hero h1,.tdg-hero h1,.tdf-cover h1,.tdn-poster h1,.tda-cover h1,.tdt-hero h1){font-size:clamp(31px,10vw,38px)!important}
 .ti-creative :is(.tdm-top,.tdr-nav,.tdd-header,.tdc-header,.tdg-header,.tdf-top,.tdn-top,.tda-header,.tdt-header) nav a{font-size:9.5px!important}
}

/* 0.7.0: Design gallery mobile corrections (separate from event template styles). */
.ti-demo-gallery .ti-demo-grid {min-width:0;}
.ti-demo-gallery .ti-demo-card {min-width:0;max-width:100%;}
.ti-demo-gallery a.ti-demo-cover-photographic {min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box;}
.ti-demo-gallery .ti-demo-cover-photographic strong,
.ti-demo-gallery .ti-demo-cover-photographic small {min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal;hyphens:auto;box-sizing:border-box;}
.ti-demo-gallery .ti-demo-card-bottom {flex-wrap:wrap;min-width:0;}
@media(max-width:760px){
 .ti-demo-gallery .ti-demo-grid{grid-template-columns:minmax(0,1fr);gap:20px;}
 .ti-demo-gallery a.ti-demo-cover-photographic{min-height:310px;padding:24px 22px!important;}
 .ti-demo-gallery .ti-demo-cover-photographic strong{font-size:clamp(27px,7.7vw,38px)!important;line-height:1.1!important;letter-spacing:-.035em;}
 .ti-demo-gallery .ti-demo-card-bottom{gap:12px;padding:18px;}
}
@media(max-width:420px){
 .ti-demo-gallery a.ti-demo-cover-photographic{min-height:285px;padding:22px 18px!important;}
 .ti-demo-gallery .ti-demo-cover-photographic strong{font-size:clamp(25px,7vw,31px)!important;letter-spacing:-.03em;}
 .ti-demo-gallery .ti-gallery-design-rose .ti-demo-cover-photographic strong{font-size:clamp(24px,6.65vw,29px)!important;}
 .ti-demo-gallery .ti-demo-cover-photographic small{font-size:12px;line-height:1.4;letter-spacing:.12em;}
 .ti-demo-gallery .ti-demo-card-bottom b{min-width:0;overflow-wrap:anywhere;}
 .ti-demo-gallery .ti-demo-card-bottom a{white-space:normal;}
}

/* Ivory supplemental calendar and countdown components */
.ti-ivory .ti-ivory-calendar,.ti-ivory .ti-ivory-countdown{text-align:center;padding:20px 16px;overflow-wrap:anywhere}.ti-ivory .ti-ivory-calendar a{display:inline-block;max-width:100%;border:1px solid currentColor;padding:12px 20px;border-radius:4px;color:inherit;text-decoration:none}.ti-ivory .ti-ivory-countdown .ti-count-display{font-size:clamp(18px,4vw,32px);margin-top:12px}

/* 0.8.5: Use nearly the entire mobile viewport for the public design gallery,
   even when the WordPress page's content column is narrow. */
@media (max-width: 680px) {
  .ti-demo-gallery.ti-app {
    width: calc(100vw - 24px);
    max-width: none;
    margin-left: calc(50% - 50vw + 12px);
    margin-right: 0;
    padding: 12px 0 22px;
    border-radius: 0;
    box-sizing: border-box;
  }
  .ti-demo-gallery .ti-demo-grid {
    grid-template-columns: minmax(0,1fr);
    gap: 20px;
    margin-top: 22px;
  }
  .ti-demo-gallery .ti-demo-card {
    width: 100%;
    min-width: 0;
    border-radius: 16px;
  }
  .ti-demo-gallery > header { padding-inline: 6px; }
  .ti-demo-gallery .ti-demo-card-bottom { padding: 20px; }
}

/* 0.8.8: gallery must never overflow the viewport at intermediate widths. */
.ti-demo-gallery,.ti-demo-gallery *{box-sizing:border-box}
.ti-demo-gallery{min-width:0;max-width:100%;overflow-x:clip}
.ti-demo-gallery .ti-demo-grid{min-width:0;max-width:100%;grid-template-columns:repeat(auto-fit,minmax(min(275px,100%),1fr))}
.ti-demo-gallery .ti-demo-card{min-width:0;max-width:100%;overflow:hidden}
.ti-demo-gallery .ti-demo-card-bottom{display:flex;flex-wrap:wrap;align-items:center;min-width:0;gap:12px}
.ti-demo-gallery .ti-demo-card-bottom a{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.ti-demo-gallery .ti-demo-cover-photographic strong{overflow-wrap:anywhere;max-width:100%}
@media(max-width:900px){.ti-demo-gallery .ti-demo-card-bottom{justify-content:flex-start}.ti-demo-gallery .ti-demo-card-bottom a{flex:0 1 auto}}
@media(max-width:680px){.ti-demo-gallery.ti-app{width:calc(100vw - 24px);max-width:calc(100vw - 24px);margin-left:calc(50% - 50vw + 12px);overflow-x:clip}.ti-demo-gallery .ti-demo-grid{grid-template-columns:minmax(0,1fr)}.ti-demo-gallery .ti-demo-card-bottom{padding:18px 16px;gap:10px}.ti-demo-gallery .ti-demo-card-bottom a{max-width:100%}}

/* 0.8.9: Fix the REAL gallery overflow caused by the WordPress constrained
   post-content and the former viewport-width breakout. Do not move the
   gallery with calc(50% - 50vw): its containing block is theme-dependent. */
@media (max-width: 900px) {
  .wp-block-post-content:has(> .ti-demo-gallery) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-inline: 12px !important;
  }
  .wp-block-post-content:has(> .ti-demo-gallery) > .ti-demo-gallery.ti-app {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 12px auto 26px !important;
    padding: 12px 0 24px !important;
    transform: none !important;
    overflow: visible !important;
  }
  .wp-block-post-content:has(> .ti-demo-gallery) .ti-demo-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .wp-block-post-content:has(> .ti-demo-gallery) .ti-demo-card,
  .wp-block-post-content:has(> .ti-demo-gallery) .ti-demo-cover-photographic {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .wp-block-post-content:has(> .ti-demo-gallery) .ti-demo-card-bottom {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 12px 18px !important;
  }
  .wp-block-post-content:has(> .ti-demo-gallery) .ti-demo-card-bottom > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}


/* 1.0.11 — visual regression fixes from the ten-design DE/EN/FR/IT demo review.
   Shared headings are fixed in design-helpers.php, not hidden by language-specific CSS. */

/* IVORY — shorter hero at all sizes, tighter intro/countdown, room after calendar. */
body.ti-ivory .ti-ivory-hero {height:clamp(440px,68svh,690px);min-height:0;}
body.ti-ivory .ti-ivory-intro {padding-top:72px;padding-bottom:38px;}
body.ti-ivory .ti-ivory-ornament {margin-bottom:12px;}
body.ti-ivory .ti-ivory-countdown {padding-top:8px;padding-bottom:15px;}
body.ti-ivory .ti-ivory-calendar {padding-bottom:58px;}
body.ti-ivory .ti-ivory-quote {padding-top:64px;padding-bottom:64px;}
body.ti-ivory .ti-ivory-details {padding-top:84px;}
@media (max-width:520px){
 body.ti-ivory .ti-ivory-hero {height:auto;min-height:clamp(480px,65svh,530px);padding-block:32px;}
 body.ti-ivory .ti-ivory-intro {padding-top:48px;padding-bottom:28px;}
 body.ti-ivory .ti-ivory-calendar {padding-bottom:48px;}
 body.ti-ivory .ti-ivory-quote {padding-block:48px;}
 body.ti-ivory .ti-ivory-details {padding-top:62px;}
}

/* MINIMAL — loosen the hyphen glyph spacing, move the photo split to the left. */
body.ti-design-minimal .tdm-hero h1 {letter-spacing:-.045em;}
body.ti-design-minimal .tdm-bottom {grid-template-columns:42% 58%;}
@media(max-width:760px){body.ti-design-minimal .tdm-bottom {grid-template-columns:minmax(0,1fr);}}

/* ROSE — no narrow portrait/bleeding collage at tablet widths. */
@media(min-width:761px) and (max-width:1120px){
 body.ti-design-rose .tdr-hero {grid-template-columns:minmax(0,1fr);min-height:0;padding:60px 8vw;gap:40px;}
 body.ti-design-rose .tdr-polaroid {width:min(460px,calc(100% - 40px));max-width:100%;margin:0 auto;transform:rotate(3deg);}
 body.ti-design-rose .tdr-collage {grid-template-columns:minmax(0,1fr);gap:54px;padding:75px 10vw;}
 body.ti-design-rose .tdr-collage-photo {height:440px;max-width:calc(100% - 24px);margin-inline:auto;}
}
body.ti-design-rose .tdr-questions {padding-bottom:50px;}
body.ti-design-rose .ti-d-personal-story {padding-top:34px;}

/* DINNER — separate adjacent green panels and make location photo truly fill. */
body.ti-design-dinner .tdd-manifesto {background:#20382e;border-top:1px solid #b39b74;}
body.ti-design-dinner .tdd-venue-picture {overflow:hidden;min-height:0;}
body.ti-design-dinner .tdd-venue-picture > img {width:100%;height:100%!important;object-fit:cover;display:block;}

/* GALA — slimmer sticky header and location section; guarantee photo frame. */
body.ti-design-gala .tdg-header {padding:18px 7vw;align-items:center;}
body.ti-design-gala .tdg-header>span {line-height:1;font-size:24px;}
body.ti-design-gala .tdg-overture figure {position:relative;height:100%;min-height:540px;overflow:hidden;background:#2c2a23;}
body.ti-design-gala .tdg-overture figure>img {display:block;width:100%;height:100%!important;object-fit:cover;}
body.ti-design-gala .tdg-location {padding-top:67px;padding-bottom:67px;}
body.ti-design-gala .tdg-line-art {font-size:58px;line-height:1.2;}
@media(max-width:760px){
 body.ti-design-gala .tdg-header {padding:12px 17px!important;}
 body.ti-design-gala .tdg-overture figure {height:400px;min-height:0;}
}

/* FASHION — prevent long words breaking within the title; contain the desktop photo. */
@media(min-width:1001px){
 body.ti-design-fashion .tdf-cover {height:clamp(530px,72svh,720px);min-height:0;}
 body.ti-design-fashion .tdf-photo {min-height:0;height:100%;}
}
body.ti-design-fashion .tdf-cover h1 {font-size:clamp(42px,4.6vw,87px);letter-spacing:-.06em;overflow-wrap:normal;word-break:normal;hyphens:none;}
body.ti-design-fashion .tdf-cover-heading {min-width:0;}
@media(min-width:761px) and (max-width:1000px){
 body.ti-design-fashion .tdf-cover h1 {font-size:clamp(35px,4.2vw,55px);}
}
@media(max-width:760px){
 body.ti-design-fashion .tdf-cover h1 {font-size:clamp(38px,10vw,72px)!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none;}
}

/* ART — remove overlarge vertical gaps without changing the artwork composition. */
body.ti-design-art .tda-cover {min-height:0;padding-top:20px;padding-bottom:80px;gap:6vw;}
body.ti-design-art .tda-cover h1 {margin-block:35px;}
body.ti-design-art .tda-cover-art {height:570px;}
body.ti-design-art .tda-curator {padding-block:85px;}
body.ti-design-art .tda-wall {margin-top:20px;margin-bottom:80px;}
body.ti-design-art .tda-other .ti-d-contact {margin-top:44px;padding-top:35px;border-top:1px solid rgba(53,66,51,.32);}
@media(max-width:760px){
 body.ti-design-art .tda-cover {padding:35px 7vw 70px;}
 body.ti-design-art .tda-cover-art {height:440px;}
 body.ti-design-art .tda-curator {padding-block:65px;}
 body.ti-design-art .tda-wall {margin-bottom:65px;}
}
@media(max-width:480px){body.ti-design-art .tda-cover-art {height:345px;}}

/* TERRACOTTA — tighter chapter spacing and closing personal message. */
body.ti-design-terracotta .tdt-letter {padding-block:88px;}
body.ti-design-terracotta .tdt-program {padding-block:85px;}
body.ti-design-terracotta .ti-d-personal-story {padding-top:35px;}
@media(max-width:760px){
 body.ti-design-terracotta .tdt-letter {padding:65px 8vw;}
 body.ti-design-terracotta .tdt-program {padding:65px 8vw;}
}

/* MUSIC — fully covered hero at every breakpoint, without the 480px image collapse. */
body.ti-design-music .tdn-poster {height:auto!important;min-height:clamp(520px,79svh,830px)!important;}
body.ti-design-music .tdn-poster-img {position:absolute;inset:0;overflow:hidden;}
body.ti-design-music .tdn-poster-img > img {width:100%;height:100%!important;min-height:100%;object-fit:cover;object-position:center;display:block;}
body.ti-design-music .tdn-poster-overlay {position:relative;z-index:1;}
@media(max-width:760px){body.ti-design-music .tdn-poster {min-height:clamp(480px,72svh,680px)!important;}}
@media(max-width:480px){body.ti-design-music .tdn-poster {min-height:clamp(440px,68svh,630px)!important;}}


/* 1.0.12 — RSVP layout and contrast: applies to live event pages and the 4 translated demos.
   All choices and submit buttons share dimensions, radius and legible states. */
body.ti-public .ti-rsvp-personal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;text-align:left}
body.ti-public .ti-rsvp-personal>label{min-width:0;margin:0}
body.ti-public .ti-rsvp-personal input{min-width:0;width:100%;max-width:100%}
body.ti-public .ti-rsvp-persons{display:block;width:min(100%,160px);margin:0}
body.ti-public .ti-rsvp-persons input{width:100%!important;max-width:160px!important;min-height:44px!important;}
body.ti-creative .ti-d-rsvp {padding:clamp(40px,5vw,65px) 20px;
  --ti-rsvp-background:#f6f5f1;--ti-rsvp-ink:#202020;--ti-rsvp-action:#292929;
  --ti-rsvp-action-text:#fff;--ti-rsvp-outline:#292929;--ti-rsvp-radius:6px;
  --ti-rsvp-submit-bg:var(--ti-rsvp-action);--ti-rsvp-submit-ink:var(--ti-rsvp-action-text);
  background:var(--ti-rsvp-background)!important;color:var(--ti-rsvp-ink)!important;
}
body.ti-creative .ti-d-rsvp-inner{max-width:760px;margin-inline:auto}
body.ti-creative .ti-d-rsvp-inner>h2{color:var(--ti-rsvp-ink)!important;font-size:clamp(31px,3.3vw,46px);margin:8px 0 21px;line-height:1.15}
body.ti-creative .ti-d-rsvp .ti-d-eyebrow{color:var(--ti-rsvp-ink)!important;opacity:.84}
body.ti-creative .ti-d-rsvp form{gap:13px;color:var(--ti-rsvp-ink)}
body.ti-creative .ti-d-rsvp form :is(label,legend,p){color:var(--ti-rsvp-ink)!important}
body.ti-creative .ti-d-rsvp form label{font-size:13px;line-height:1.4}
body.ti-creative .ti-d-rsvp input:not([type=radio]){padding:11px 13px;min-height:44px;border:1px solid #8e8e8e;border-radius:var(--ti-rsvp-radius);background:#fff;color:#171717!important;box-shadow:none;font-size:15px}
body.ti-creative .ti-d-rsvp .ti-rsvp-choice{--ti-rsvp-base:var(--ti-rsvp-outline);--ti-rsvp-on:var(--ti-rsvp-action-text);margin:4px 0!important;gap:12px}
body.ti-creative .ti-d-rsvp .ti-rsvp-choice legend{margin:0 0 8px;color:var(--ti-rsvp-ink)!important}
body.ti-creative .ti-d-rsvp .ti-rsvp-choice .ti-rsvp-option span{
  min-height:49px;padding:11px 13px;border:2px solid var(--ti-rsvp-outline)!important;
  border-radius:var(--ti-rsvp-radius)!important;color:var(--ti-rsvp-ink)!important;
  background:transparent!important;font-size:14px!important;
}
body.ti-creative .ti-d-rsvp .ti-rsvp-choice .ti-rsvp-option input[type=radio]:checked+span{
  background:var(--ti-rsvp-action)!important;border-color:var(--ti-rsvp-action)!important;
  color:var(--ti-rsvp-action-text)!important;
}
body.ti-creative .ti-d-rsvp form>button{
  display:block;width:100%;min-height:51px;margin:2px 0 0;padding:12px 18px;
  border:2px solid var(--ti-rsvp-outline)!important;border-radius:var(--ti-rsvp-radius)!important;
  color:var(--ti-rsvp-submit-ink)!important;background:var(--ti-rsvp-submit-bg)!important;
  font:700 14px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.045em;text-transform:uppercase;
}
body.ti-creative .ti-d-rsvp form>button:disabled{opacity:1!important;cursor:not-allowed}
body.ti-creative .ti-d-rsvp :is(.ti-privacy,.ti-guest-remaining){margin:2px 0 0;line-height:1.5;color:var(--ti-rsvp-ink)!important;opacity:.87}
body.ti-creative .ti-d-rsvp :is(input,button):focus-visible{outline:3px solid currentColor;outline-offset:3px}
/* Per-design palettes: RSVP colours are controlled by the chosen template, not by
   arbitrary client accent values, which can fail WCAG contrast on these surfaces. */
body.ti-design-minimal .ti-d-rsvp{--ti-rsvp-background:#151515;--ti-rsvp-ink:#fff;
  --ti-rsvp-action:#fff;--ti-rsvp-action-text:#151515;--ti-rsvp-outline:#fff;
  --ti-rsvp-submit-bg:#151515;--ti-rsvp-submit-ink:#fff;--ti-rsvp-radius:0px}
body.ti-design-rose .ti-d-rsvp{--ti-rsvp-background:#9f5978;--ti-rsvp-ink:#fff;
  --ti-rsvp-action:#fff;--ti-rsvp-action-text:#612943;--ti-rsvp-outline:#fff;--ti-rsvp-radius:22px}
body.ti-design-dinner .ti-d-rsvp{--ti-rsvp-background:#e9e0d0;--ti-rsvp-ink:#203629;
  --ti-rsvp-action:#203629;--ti-rsvp-action-text:#fff;--ti-rsvp-outline:#203629;--ti-rsvp-radius:4px}
body.ti-design-corporate .ti-d-rsvp{--ti-rsvp-background:#dde9f1;--ti-rsvp-ink:#17334f;
  --ti-rsvp-action:#17334f;--ti-rsvp-action-text:#fff;--ti-rsvp-outline:#17334f;--ti-rsvp-radius:5px}
body.ti-design-gala .ti-d-rsvp{--ti-rsvp-background:#d8c7a4;--ti-rsvp-ink:#2a2318;
  --ti-rsvp-action:#392913;--ti-rsvp-action-text:#fff9ec;--ti-rsvp-outline:#392913;--ti-rsvp-radius:0px}
body.ti-design-fashion .ti-d-rsvp{--ti-rsvp-background:#101010;--ti-rsvp-ink:#fff;
  --ti-rsvp-action:#fff;--ti-rsvp-action-text:#101010;--ti-rsvp-outline:#fff;--ti-rsvp-radius:0px}
body.ti-design-music .ti-d-rsvp{--ti-rsvp-background:#240e52;--ti-rsvp-ink:#f9f4ff;
  --ti-rsvp-action:#f2e9ff;--ti-rsvp-action-text:#240e52;--ti-rsvp-outline:#f2e9ff;--ti-rsvp-radius:15px}
body.ti-design-art .ti-d-rsvp{--ti-rsvp-background:#dfe6dc;--ti-rsvp-ink:#253a2b;
  --ti-rsvp-action:#244b32;--ti-rsvp-action-text:#fff;--ti-rsvp-outline:#244b32;--ti-rsvp-radius:2px}
body.ti-design-terracotta .ti-d-rsvp{--ti-rsvp-background:#a25e43;--ti-rsvp-ink:#fff;
  --ti-rsvp-action:#fff5e9;--ti-rsvp-action-text:#623421;--ti-rsvp-outline:#fff5e9;--ti-rsvp-radius:100px}
/* The RSVP choices on dark panels use outline and text in the panel's light colour. */
body.ti-design-rose .ti-d-rsvp,
body.ti-design-minimal .ti-d-rsvp,
body.ti-design-fashion .ti-d-rsvp,
body.ti-design-music .ti-d-rsvp,
body.ti-design-terracotta .ti-d-rsvp{color:var(--ti-rsvp-ink)!important}
/* The last UI is Ivory, whose RSVP uses its own markup (not design-helpers.php). */
body.ti-ivory .ti-ivory-rsvp{padding:clamp(44px,5vw,70px) 20px}
body.ti-ivory .ti-ivory-rsvp .ti-rsvp-inner{max-width:760px}
body.ti-ivory .ti-ivory-rsvp form{display:grid;gap:12px}
body.ti-ivory .ti-ivory-rsvp form>label{max-width:160px;margin:0}
body.ti-ivory .ti-ivory-rsvp form>label input{max-width:160px}
body.ti-ivory .ti-ivory-rsvp .ti-rsvp-choice{margin:7px 0!important}
body.ti-ivory .ti-ivory-rsvp .ti-rsvp-option span{min-height:49px;border-radius:2px!important}
body.ti-ivory .ti-ivory-rsvp form>button{
  width:100%;min-height:50px;margin-top:2px;background:#594636!important;
  color:#fff!important;border:2px solid #594636!important;border-radius:2px!important;font-weight:700;
}
body.ti-ivory .ti-ivory-rsvp .ti-rsvp-personal input{min-height:44px;padding:11px 13px;margin-top:5px}
@media(max-width:620px){
 body.ti-public .ti-rsvp-personal{grid-template-columns:minmax(0,1fr);gap:9px}
 body.ti-creative .ti-d-rsvp{padding:44px 18px}
 body.ti-creative .ti-d-rsvp-inner>h2{font-size:clamp(29px,8vw,38px);margin-bottom:18px}
 body.ti-public .ti-rsvp-persons{width:min(100%,150px)}
}
/* Individual issues observed at the 1.0.11 review. */
body.ti-design-dinner .tdd-manifesto{border-top:0!important;position:relative}
body.ti-design-dinner .tdd-manifesto::before{content:"";display:block;width:100px;height:1px;background:#bea478;margin:0 auto 48px}
body.ti-design-corporate .tdc-venue-col>.ti-d-venue{margin-top:22px}
body.ti-design-corporate .tdc-venue-col .ti-d-venue>.ti-d-eyebrow{display:block;margin-bottom:16px}
body.ti-design-art .tda-curator{row-gap:14px}
body.ti-design-art .tda-curator h2{margin-bottom:0}
body.ti-design-art .tda-curator .tda-intro{margin-top:0}
body.ti-design-art .tda-curator .tda-intro p{margin-top:0}
@media(max-width:760px){body.ti-design-art .tda-curator{row-gap:10px}}
/* Ivory's original small brown label fell below 4.5:1 against its beige RSVP panel. */
body.ti-ivory .ti-ivory-rsvp .ti-rsvp-choice{--ti-rsvp-base:#594636;--ti-rsvp-on:#fff}
body.ti-ivory .ti-ivory-rsvp form>button:disabled{opacity:1!important;cursor:not-allowed}

/* 1.0.14 – searchable, accessible, instant catalogue filters (gallery and Studio). */
.ti-demo-gallery .ti-template-filter,.ti-design-picker .ti-template-filter{
 display:none;flex-direction:column;gap:11px;margin:24px 0 28px;padding:22px 23px;
 border:1px solid #e6e2d9;border-radius:16px;background:#faf9f6;
 color:#262b2d;box-shadow:0 8px 24px rgba(20,26,29,.035);font-family:system-ui,-apple-system,Arial,sans-serif;
}
.ti-demo-gallery.ti-template-filter-ready .ti-template-filter,
.ti-design-picker.ti-template-filter-ready .ti-template-filter{display:flex}
.ti-template-filter .ti-template-search-label{display:flex;flex-direction:column;gap:8px;font-size:12px!important;line-height:1.4;font-weight:650;color:#343c42;letter-spacing:.012em}
.ti-template-filter .ti-template-search{appearance:auto;box-sizing:border-box;width:100%;max-width:480px;height:45px;min-height:45px;margin:0!important;padding:10px 14px!important;
 background:#fff!important;color:#1f2b32!important;border:1px solid #c9d0d2!important;border-radius:9px!important;
 font:400 15px/1.4 system-ui,-apple-system,Arial,sans-serif!important;box-shadow:none!important}
.ti-template-filter .ti-template-search::placeholder{color:#697378;opacity:1}
.ti-template-filter .ti-template-search:focus-visible{outline:2px solid #294d55!important;outline-offset:2px}
.ti-template-filter .ti-template-filter-label{font-size:12px;font-weight:650;line-height:1.45;color:#455055;margin-top:7px}
.ti-template-filter .ti-template-chips{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
.ti-template-filter .ti-template-chips button{appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:9px;
 width:auto!important;max-width:100%;min-height:39px;margin:0!important;padding:8px 13px!important;border:1px solid #ccd1d1!important;
 border-radius:100px!important;background:#fff!important;color:#26343a!important;box-shadow:none!important;
 font:600 12px/1.3 system-ui,-apple-system,Arial,sans-serif!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
.ti-template-filter .ti-template-chips button:hover{border-color:#455a64!important;background:#eef1f0!important}
.ti-template-filter .ti-template-chips button[aria-pressed="true"]{background:#17313a!important;color:#fff!important;border-color:#17313a!important}
.ti-template-filter .ti-template-chips button:focus-visible,.ti-template-filter [data-ti-filter-reset]:focus-visible{outline:3px solid #376477!important;outline-offset:2px}
.ti-template-filter .ti-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 4px;border-radius:50px;
 background:#eef0ef;color:#35444a;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}
.ti-template-filter .ti-template-chips button[aria-pressed="true"] .ti-chip-count{background:#526972;color:#fff}
.ti-template-filter .ti-template-filter-results{font:500 12px/1.4 system-ui,-apple-system,Arial,sans-serif;color:#566369;min-height:17px}
.ti-template-filter .ti-template-filter-empty{background:#fff;padding:16px!important;border:1px dashed #c8cdcc;border-radius:9px;color:#37474e;font-size:13px;line-height:1.6;margin:0!important}
.ti-template-filter [data-ti-filter-reset]{display:inline!important;width:auto!important;margin:0 0 0 8px!important;padding:2px 0!important;background:transparent!important;border:0!important;
 color:#184b59!important;text-decoration:underline!important;font:650 13px/1.4 system-ui,-apple-system,Arial,sans-serif!important;cursor:pointer}
.ti-demo-gallery .ti-demo-card[hidden],.ti-design-picker .ti-design-tile[hidden],.ti-template-filter .ti-template-filter-empty[hidden]{display:none!important}
@media(max-width:680px){
 .ti-demo-gallery .ti-template-filter,.ti-design-picker .ti-template-filter{padding:17px 14px;margin:20px 0 23px;border-radius:12px}
 .ti-template-filter .ti-template-search{max-width:none}
 .ti-template-filter .ti-template-chips{gap:7px}
 .ti-template-filter .ti-template-chips button{min-height:38px;padding:8px 10px!important;font-size:11px!important;gap:6px}
}

.ti-design-picker .ti-design-current{margin:3px 0 12px!important;color:#47555e;font:600 12px/1.5 system-ui,-apple-system,Arial,sans-serif}

/* 1.0.19 – Compact category filter. On phones it occupies ONE swipeable row,
   never ten vertical rows. Both gallery and Studio share the same control. */
.ti-demo-gallery .ti-template-filter,.ti-design-picker .ti-template-filter{
  gap:9px; padding:15px 18px; margin:16px 0 20px; background:#fbfaf7;
  box-shadow:none; border-radius:14px;
}
.ti-template-filter .ti-template-search-label{gap:4px}
.ti-template-filter .ti-template-search{height:40px;min-height:40px;font-size:14px!important}
.ti-template-filter .ti-template-filter-label{margin-top:0}
.ti-template-filter .ti-template-chip-viewport{min-width:0;max-width:100%}
.ti-template-filter .ti-template-chips{gap:6px;align-items:center}
.ti-template-filter .ti-template-chips button{min-height:32px;padding:6px 10px!important;gap:6px;font-size:11px!important;white-space:nowrap;line-height:1.2}
.ti-template-filter .ti-chip-count{min-width:17px;height:17px;font-size:10px}
.ti-template-filter .ti-template-filter-results{min-height:15px;font-size:11px}
@media(max-width:760px){
  .ti-demo-gallery .ti-template-filter,.ti-design-picker .ti-template-filter{padding:12px 11px;margin:12px 0 16px;gap:7px;border-radius:11px}
  .ti-template-filter .ti-template-search-label>span{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
  .ti-template-filter .ti-template-search{height:38px;min-height:38px;padding:7px 11px!important;font-size:13px!important;border-radius:8px!important}
  .ti-template-filter .ti-template-filter-label{font-size:11px;letter-spacing:.01em}
  .ti-template-filter .ti-template-chip-viewport{overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#a6b3af transparent;touch-action:pan-x pan-y;padding-bottom:4px}
  .ti-template-filter .ti-template-chips{width:max-content;max-width:none;flex-wrap:nowrap;gap:6px}
  .ti-template-filter .ti-template-chips button{flex:none;min-height:31px;padding:6px 9px!important;font-size:11px!important;border-radius:100px!important}
  .ti-template-filter .ti-chip-count{min-width:16px;height:16px}
}
@media(max-width:400px){.ti-template-filter .ti-template-filter-label{font-size:10px}.ti-demo-gallery .ti-template-filter,.ti-design-picker .ti-template-filter{padding:10px}}

/* 1.0.19 – Each design gets its own typographic preview language and palette.
   No changes to media attachments or existing event content. */
.ti-demo-gallery .ti-demo-card{background:var(--ti-gallery-paper,#fff);border:1px solid rgba(24,33,38,.09);box-shadow:0 8px 23px rgba(26,34,35,.065);transition:transform .2s ease,box-shadow .2s ease}
.ti-demo-gallery .ti-demo-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(26,34,35,.13)}
.ti-demo-gallery a.ti-demo-cover-photographic{isolation:isolate;overflow:hidden;min-height:335px;padding:24px}
.ti-demo-gallery .ti-demo-card .ti-demo-darken{background:linear-gradient(180deg,var(--ti-gallery-top,rgba(5,12,19,.13)) 0%,rgba(5,12,19,.18) 32%,var(--ti-gallery-bottom,rgba(5,12,19,.89)) 100%)}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic strong{font-size:clamp(29px,3vw,44px);line-height:1.08;hyphens:auto;overflow-wrap:break-word;text-wrap:balance}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic small{max-width:92%;font-size:13px;line-height:1.45}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic .ti-kicker{font:700 10px/1.4 Arial,sans-serif;letter-spacing:.17em}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic::before{content:"";pointer-events:none;position:absolute;z-index:1;opacity:.95}
.ti-demo-gallery .ti-demo-card .ti-demo-card-bottom{background:var(--ti-gallery-paper,#fff);color:var(--ti-gallery-ink,#20343a);border-top:3px solid var(--ti-gallery-accent,#977e60)}
.ti-demo-gallery .ti-demo-card .ti-demo-card-bottom b{font-size:13px;max-width:100%;overflow-wrap:anywhere}
.ti-demo-gallery .ti-demo-card .ti-demo-card-bottom a{color:var(--ti-gallery-ink,#20343a)!important}
.ti-demo-gallery .ti-demo-card .ti-demo-create{border-color:var(--ti-gallery-accent,#977e60)!important}
/* Five distinct photographic editorial compositions. */
.ti-demo-gallery .ti-gallery-layout-editorial .ti-demo-cover-photographic{align-items:center;text-align:center;justify-content:center;padding:40px 25px}
.ti-demo-gallery .ti-gallery-layout-editorial .ti-demo-cover-photographic>:not(.ti-demo-darken){text-align:center!important}
.ti-demo-gallery .ti-gallery-layout-editorial .ti-demo-cover-photographic::before{inset:16px;border:1px solid rgba(255,255,255,.65)}
.ti-demo-gallery .ti-gallery-layout-editorial .ti-demo-cover-photographic strong{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em}
.ti-demo-gallery .ti-gallery-layout-poster .ti-demo-cover-photographic{justify-content:end;align-items:start;padding:20px;}
.ti-demo-gallery .ti-gallery-layout-poster .ti-demo-cover-photographic strong{font:850 clamp(32px,3.3vw,51px)/.91 Arial,sans-serif!important;letter-spacing:-.072em!important;text-transform:uppercase}
.ti-demo-gallery .ti-gallery-layout-poster .ti-demo-cover-photographic::before{top:13px;left:13px;width:45px;height:6px;background:var(--ti-gallery-accent)}
.ti-demo-gallery .ti-gallery-layout-framed .ti-demo-cover-photographic{justify-content:center;align-items:center;padding:44px 32px}
.ti-demo-gallery .ti-gallery-layout-framed .ti-demo-cover-photographic>:not(.ti-demo-darken){text-align:center!important}
.ti-demo-gallery .ti-gallery-layout-framed .ti-demo-cover-photographic::before{inset:24px;border:2px solid var(--ti-gallery-accent);border-radius:60% 60% 0 0}
.ti-demo-gallery .ti-gallery-layout-framed .ti-demo-cover-photographic strong{font-family:Georgia,serif;font-style:italic;font-weight:400}
.ti-demo-gallery .ti-gallery-layout-split .ti-demo-cover-photographic{justify-content:end;align-items:start;padding:22px 28px 22px 24px}
.ti-demo-gallery .ti-gallery-layout-split .ti-demo-cover-photographic::before{top:0;bottom:0;right:0;width:9px;background:var(--ti-gallery-accent)}
.ti-demo-gallery .ti-gallery-layout-split .ti-demo-cover-photographic strong{font-family:Arial,sans-serif;font-weight:800;letter-spacing:-.055em}
.ti-demo-gallery .ti-gallery-layout-centered .ti-demo-cover-photographic{justify-content:end;align-items:center;padding:30px 25px 40px}
.ti-demo-gallery .ti-gallery-layout-centered .ti-demo-cover-photographic>:not(.ti-demo-darken){text-align:center!important}
.ti-demo-gallery .ti-gallery-layout-centered .ti-demo-cover-photographic::before{height:4px;width:65px;top:24px;left:calc(50% - 32px);background:var(--ti-gallery-accent)}
.ti-demo-gallery .ti-gallery-layout-centered .ti-demo-cover-photographic strong{font-family:Georgia,serif;font-weight:500;letter-spacing:-.02em}
/* Studio cards echo each actual theme instead of reusing an identical beige swatch. */
.ti-design-tile .ti-design-swatch{background:var(--demo-bg,#ede5dc);color:var(--demo-fg,#292824)}
.ti-design-tile .ti-design-swatch::before{content:"";position:absolute;left:0;top:0;height:6px;width:100%;background:var(--demo-accent,#93735f);pointer-events:none}
.ti-design-tile .ti-design-mini-title{position:relative;z-index:2}
@media(max-width:580px){.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic{min-height:325px}}
@media(prefers-reduced-motion:reduce){.ti-demo-gallery .ti-demo-card{transition:none}.ti-demo-gallery .ti-demo-card:hover{transform:none}}
.ti-demo-gallery .ti-gallery-design-ivory{--ti-gallery-paper:#f8f5ee;--ti-gallery-ink:#42312d;--ti-gallery-accent:#98716c;--ti-gallery-top:rgba(152,113,108,0.22);--ti-gallery-bottom:rgba(66,49,45,0.93);}
.ti-design-tile.ti-theme-ivory{--demo-bg:#f8f5ee;--demo-fg:#42312d;--demo-accent:#98716c;}
.ti-demo-gallery .ti-gallery-design-minimal{--ti-gallery-paper:#f5f5f2;--ti-gallery-ink:#181818;--ti-gallery-accent:#353535;--ti-gallery-top:rgba(53,53,53,0.22);--ti-gallery-bottom:rgba(24,24,24,0.93);}
.ti-design-tile.ti-theme-minimal{--demo-bg:#f5f5f2;--demo-fg:#181818;--demo-accent:#353535;}
.ti-demo-gallery .ti-gallery-design-rose{--ti-gallery-paper:#fff6f2;--ti-gallery-ink:#743d53;--ti-gallery-accent:#bf7993;--ti-gallery-top:rgba(191,121,147,0.22);--ti-gallery-bottom:rgba(116,61,83,0.93);}
.ti-design-tile.ti-theme-rose{--demo-bg:#fff6f2;--demo-fg:#743d53;--demo-accent:#bf7993;}
.ti-demo-gallery .ti-gallery-design-dinner{--ti-gallery-paper:#182e25;--ti-gallery-ink:#f2ecdf;--ti-gallery-accent:#c7a46a;--ti-gallery-top:rgba(199,164,106,0.22);--ti-gallery-bottom:rgba(242,236,223,0.93);}
.ti-design-tile.ti-theme-dinner{--demo-bg:#182e25;--demo-fg:#f2ecdf;--demo-accent:#c7a46a;}
.ti-demo-gallery .ti-gallery-design-corporate{--ti-gallery-paper:#e9f1f8;--ti-gallery-ink:#17334f;--ti-gallery-accent:#3476aa;--ti-gallery-top:rgba(52,118,170,0.22);--ti-gallery-bottom:rgba(23,51,79,0.93);}
.ti-design-tile.ti-theme-corporate{--demo-bg:#e9f1f8;--demo-fg:#17334f;--demo-accent:#3476aa;}
.ti-demo-gallery .ti-gallery-design-gala{--ti-gallery-paper:#18151b;--ti-gallery-ink:#f7f0e4;--ti-gallery-accent:#b08b57;--ti-gallery-top:rgba(176,139,87,0.22);--ti-gallery-bottom:rgba(247,240,228,0.93);}
.ti-design-tile.ti-theme-gala{--demo-bg:#18151b;--demo-fg:#f7f0e4;--demo-accent:#b08b57;}
.ti-demo-gallery .ti-gallery-design-fashion{--ti-gallery-paper:#f6f5f2;--ti-gallery-ink:#171717;--ti-gallery-accent:#515151;--ti-gallery-top:rgba(81,81,81,0.22);--ti-gallery-bottom:rgba(23,23,23,0.93);}
.ti-design-tile.ti-theme-fashion{--demo-bg:#f6f5f2;--demo-fg:#171717;--demo-accent:#515151;}
.ti-demo-gallery .ti-gallery-design-music{--ti-gallery-paper:#241146;--ti-gallery-ink:#f4e9ff;--ti-gallery-accent:#c958dd;--ti-gallery-top:rgba(201,88,221,0.22);--ti-gallery-bottom:rgba(244,233,255,0.93);}
.ti-design-tile.ti-theme-music{--demo-bg:#241146;--demo-fg:#f4e9ff;--demo-accent:#c958dd;}
.ti-demo-gallery .ti-gallery-design-art{--ti-gallery-paper:#f2f0e9;--ti-gallery-ink:#2a4231;--ti-gallery-accent:#526751;--ti-gallery-top:rgba(82,103,81,0.22);--ti-gallery-bottom:rgba(42,66,49,0.93);}
.ti-design-tile.ti-theme-art{--demo-bg:#f2f0e9;--demo-fg:#2a4231;--demo-accent:#526751;}
.ti-demo-gallery .ti-gallery-design-terracotta{--ti-gallery-paper:#f8eee3;--ti-gallery-ink:#623421;--ti-gallery-accent:#b87052;--ti-gallery-top:rgba(184,112,82,0.22);--ti-gallery-bottom:rgba(98,52,33,0.93);}
.ti-design-tile.ti-theme-terracotta{--demo-bg:#f8eee3;--demo-fg:#623421;--demo-accent:#b87052;}
.ti-demo-gallery .ti-gallery-design-botanical{--ti-gallery-paper:#f6f3e9;--ti-gallery-ink:#294433;--ti-gallery-accent:#9bb991;--ti-gallery-top:rgba(155,185,145,0.22);--ti-gallery-bottom:rgba(41,68,51,0.93);}
.ti-design-tile.ti-theme-botanical{--demo-bg:#f6f3e9;--demo-fg:#294433;--demo-accent:#9bb991;}
.ti-demo-gallery .ti-gallery-design-coastal{--ti-gallery-paper:#f8f6ec;--ti-gallery-ink:#13536a;--ti-gallery-accent:#92cdd5;--ti-gallery-top:rgba(146,205,213,0.22);--ti-gallery-bottom:rgba(19,83,106,0.93);}
.ti-design-tile.ti-theme-coastal{--demo-bg:#f8f6ec;--demo-fg:#13536a;--demo-accent:#92cdd5;}
.ti-demo-gallery .ti-gallery-design-alpine{--ti-gallery-paper:#f1eee5;--ti-gallery-ink:#214239;--ti-gallery-accent:#a88a5b;--ti-gallery-top:rgba(168,138,91,0.22);--ti-gallery-bottom:rgba(33,66,57,0.93);}
.ti-design-tile.ti-theme-alpine{--demo-bg:#f1eee5;--demo-fg:#214239;--demo-accent:#a88a5b;}
.ti-demo-gallery .ti-gallery-design-noir{--ti-gallery-paper:#171717;--ti-gallery-ink:#fffaf2;--ti-gallery-accent:#bc9459;--ti-gallery-top:rgba(188,148,89,0.22);--ti-gallery-bottom:rgba(21,21,21,0.93);}
.ti-design-tile.ti-theme-noir{--demo-bg:#171717;--demo-fg:#fffaf2;--demo-accent:#bc9459;}
.ti-demo-gallery .ti-gallery-design-festival{--ti-gallery-paper:#fff1d4;--ti-gallery-ink:#21362e;--ti-gallery-accent:#df5639;--ti-gallery-top:rgba(223,86,57,0.22);--ti-gallery-bottom:rgba(33,54,46,0.93);}
.ti-design-tile.ti-theme-festival{--demo-bg:#fff1d4;--demo-fg:#21362e;--demo-accent:#df5639;}
.ti-demo-gallery .ti-gallery-design-summit{--ti-gallery-paper:#e9f0f2;--ti-gallery-ink:#102f42;--ti-gallery-accent:#26afb2;--ti-gallery-top:rgba(38,175,178,0.22);--ti-gallery-bottom:rgba(16,47,66,0.93);}
.ti-design-tile.ti-theme-summit{--demo-bg:#e9f0f2;--demo-fg:#102f42;--demo-accent:#26afb2;}
.ti-demo-gallery .ti-gallery-design-parade{--ti-gallery-paper:#fff6df;--ti-gallery-ink:#383079;--ti-gallery-accent:#ec8a79;--ti-gallery-top:rgba(236,138,121,0.22);--ti-gallery-bottom:rgba(56,48,121,0.93);}
.ti-design-tile.ti-theme-parade{--demo-bg:#fff6df;--demo-fg:#383079;--demo-accent:#ec8a79;}
.ti-demo-gallery .ti-gallery-design-zen{--ti-gallery-paper:#f6f5f0;--ti-gallery-ink:#42584b;--ti-gallery-accent:#b0b8a5;--ti-gallery-top:rgba(176,184,165,0.22);--ti-gallery-bottom:rgba(66,88,75,0.93);}
.ti-design-tile.ti-theme-zen{--demo-bg:#f6f5f0;--demo-fg:#42584b;--demo-accent:#b0b8a5;}
.ti-demo-gallery .ti-gallery-design-rooftop{--ti-gallery-paper:#21263c;--ti-gallery-ink:#fffaf2;--ti-gallery-accent:#ecaa7b;--ti-gallery-top:rgba(236,170,123,0.22);--ti-gallery-bottom:rgba(21,27,47,0.93);}
.ti-design-tile.ti-theme-rooftop{--demo-bg:#21263c;--demo-fg:#fffaf2;--demo-accent:#ecaa7b;}
.ti-demo-gallery .ti-gallery-design-winter{--ti-gallery-paper:#edf3f7;--ti-gallery-ink:#234459;--ti-gallery-accent:#8db6cd;--ti-gallery-top:rgba(141,182,205,0.22);--ti-gallery-bottom:rgba(35,68,89,0.93);}
.ti-design-tile.ti-theme-winter{--demo-bg:#edf3f7;--demo-fg:#234459;--demo-accent:#8db6cd;}
.ti-demo-gallery .ti-gallery-design-passport{--ti-gallery-paper:#f7e7c8;--ti-gallery-ink:#243f47;--ti-gallery-accent:#d08154;--ti-gallery-top:rgba(208,129,84,0.22);--ti-gallery-bottom:rgba(36,63,71,0.93);}
.ti-design-tile.ti-theme-passport{--demo-bg:#f7e7c8;--demo-fg:#243f47;--demo-accent:#d08154;}
.ti-demo-gallery .ti-gallery-design-vineyard{--ti-gallery-paper:#f6f0e5;--ti-gallery-ink:#492d35;--ti-gallery-accent:#a98762;--ti-gallery-top:rgba(169,135,98,0.22);--ti-gallery-bottom:rgba(73,45,53,0.93);}
.ti-design-tile.ti-theme-vineyard{--demo-bg:#f6f0e5;--demo-fg:#492d35;--demo-accent:#a98762;}
.ti-demo-gallery .ti-gallery-design-heritage{--ti-gallery-paper:#f2ead9;--ti-gallery-ink:#2c2935;--ti-gallery-accent:#af8b50;--ti-gallery-top:rgba(175,139,80,0.22);--ti-gallery-bottom:rgba(44,41,53,0.93);}
.ti-design-tile.ti-theme-heritage{--demo-bg:#f2ead9;--demo-fg:#2c2935;--demo-accent:#af8b50;}
.ti-demo-gallery .ti-gallery-design-charity{--ti-gallery-paper:#f2f0ea;--ti-gallery-ink:#134435;--ti-gallery-accent:#d4a15f;--ti-gallery-top:rgba(212,161,95,0.22);--ti-gallery-bottom:rgba(19,68,53,0.93);}
.ti-design-tile.ti-theme-charity{--demo-bg:#f2f0ea;--demo-fg:#134435;--demo-accent:#d4a15f;}
.ti-demo-gallery .ti-gallery-design-atelier{--ti-gallery-paper:#f6f0e9;--ti-gallery-ink:#533d3d;--ti-gallery-accent:#bb786f;--ti-gallery-top:rgba(187,120,111,0.22);--ti-gallery-bottom:rgba(83,61,61,0.93);}
.ti-design-tile.ti-theme-atelier{--demo-bg:#f6f0e9;--demo-fg:#533d3d;--demo-accent:#bb786f;}
.ti-demo-gallery .ti-gallery-design-vows{--ti-gallery-paper:#f6f6f2;--ti-gallery-ink:#232d31;--ti-gallery-accent:#879c96;--ti-gallery-top:rgba(135,156,150,0.22);--ti-gallery-bottom:rgba(35,45,49,0.93);}
.ti-design-tile.ti-theme-vows{--demo-bg:#f6f6f2;--demo-fg:#232d31;--demo-accent:#879c96;}
.ti-demo-gallery .ti-gallery-design-tuscany{--ti-gallery-paper:#f5ebd8;--ti-gallery-ink:#563c2a;--ti-gallery-accent:#c28a53;--ti-gallery-top:rgba(194,138,83,0.22);--ti-gallery-bottom:rgba(86,60,42,0.93);}
.ti-design-tile.ti-theme-tuscany{--demo-bg:#f5ebd8;--demo-fg:#563c2a;--demo-accent:#c28a53;}
.ti-demo-gallery .ti-gallery-design-moonlit{--ti-gallery-paper:#1d222b;--ti-gallery-ink:#fffaf2;--ti-gallery-accent:#d9c195;--ti-gallery-top:rgba(217,193,149,0.22);--ti-gallery-bottom:rgba(12,20,32,0.93);}
.ti-design-tile.ti-theme-moonlit{--demo-bg:#1d222b;--demo-fg:#fffaf2;--demo-accent:#d9c195;}
.ti-demo-gallery .ti-gallery-design-sakura{--ti-gallery-paper:#faf2f0;--ti-gallery-ink:#543e46;--ti-gallery-accent:#b8879c;--ti-gallery-top:rgba(184,135,156,0.22);--ti-gallery-bottom:rgba(84,62,70,0.93);}
.ti-design-tile.ti-theme-sakura{--demo-bg:#faf2f0;--demo-fg:#543e46;--demo-accent:#b8879c;}
.ti-demo-gallery .ti-gallery-design-keynote{--ti-gallery-paper:#eef3f4;--ti-gallery-ink:#172d46;--ti-gallery-accent:#6d9bab;--ti-gallery-top:rgba(109,155,171,0.22);--ti-gallery-bottom:rgba(23,45,70,0.93);}
.ti-design-tile.ti-theme-keynote{--demo-bg:#eef3f4;--demo-fg:#172d46;--demo-accent:#6d9bab;}
.ti-demo-gallery .ti-gallery-design-boardroom{--ti-gallery-paper:#eee9dc;--ti-gallery-ink:#24372d;--ti-gallery-accent:#bd9861;--ti-gallery-top:rgba(189,152,97,0.22);--ti-gallery-bottom:rgba(36,55,45,0.93);}
.ti-design-tile.ti-theme-boardroom{--demo-bg:#eee9dc;--demo-fg:#24372d;--demo-accent:#bd9861;}
.ti-demo-gallery .ti-gallery-design-brandlab{--ti-gallery-paper:#11121a;--ti-gallery-ink:#fffaf2;--ti-gallery-accent:#f0a8a1;--ti-gallery-top:rgba(240,168,161,0.22);--ti-gallery-bottom:rgba(16,16,25,0.93);}
.ti-design-tile.ti-theme-brandlab{--demo-bg:#11121a;--demo-fg:#fffaf2;--demo-accent:#f0a8a1;}
.ti-demo-gallery .ti-gallery-design-social{--ti-gallery-paper:#1c2331;--ti-gallery-ink:#fffaf2;--ti-gallery-accent:#caa471;--ti-gallery-top:rgba(202,164,113,0.22);--ti-gallery-bottom:rgba(19,30,43,0.93);}
.ti-design-tile.ti-theme-social{--demo-bg:#1c2331;--demo-fg:#fffaf2;--demo-accent:#caa471;}
.ti-demo-gallery .ti-gallery-design-milestone{--ti-gallery-paper:#fff6ed;--ti-gallery-ink:#683e54;--ti-gallery-accent:#e4a0a7;--ti-gallery-top:rgba(228,160,167,0.22);--ti-gallery-bottom:rgba(104,62,84,0.93);}
.ti-design-tile.ti-theme-milestone{--demo-bg:#fff6ed;--demo-fg:#683e54;--demo-accent:#e4a0a7;}
.ti-demo-gallery .ti-gallery-design-golden60{--ti-gallery-paper:#f5ecd9;--ti-gallery-ink:#584228;--ti-gallery-accent:#cba65f;--ti-gallery-top:rgba(203,166,95,0.22);--ti-gallery-bottom:rgba(88,66,40,0.93);}
.ti-design-tile.ti-theme-golden60{--demo-bg:#f5ecd9;--demo-fg:#584228;--demo-accent:#cba65f;}
.ti-demo-gallery .ti-gallery-design-colourpop{--ti-gallery-paper:#f7f0ff;--ti-gallery-ink:#352a71;--ti-gallery-accent:#e084bd;--ti-gallery-top:rgba(224,132,189,0.22);--ti-gallery-bottom:rgba(53,42,113,0.93);}
.ti-design-tile.ti-theme-colourpop{--demo-bg:#f7f0ff;--demo-fg:#352a71;--demo-accent:#e084bd;}
/* 1.0.20 — Compact mobile category navigation (same markup in studio and gallery). */
.ti-template-filter .ti-template-chip-row{display:flex;align-items:center;gap:5px;min-width:0;max-width:100%}
.ti-template-filter .ti-template-chip-viewport{flex:1 1 auto;min-width:0}
.ti-template-filter .ti-chip-nav{display:none!important;flex:none!important;width:31px!important;min-width:31px!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;border-radius:10px!important;border:1px solid #cad3d0!important;background:#fff!important;color:#24424a!important;font:600 23px/1 system-ui,sans-serif!important;box-shadow:none!important;cursor:pointer}
.ti-template-filter .ti-chip-nav:disabled{opacity:.3!important;cursor:default}
.ti-template-filter .ti-chip-nav:focus-visible{outline:3px solid #47727f!important;outline-offset:2px}
@media(max-width:760px){
 .ti-template-filter.ti-filter-can-scroll .ti-chip-nav{display:inline-flex!important;align-items:center;justify-content:center}
 .ti-template-filter .ti-template-chip-row{margin:0;width:100%}
 .ti-template-filter .ti-template-chip-viewport{width:0}
 .ti-template-filter .ti-template-chips button{white-space:nowrap!important}
}

/* 1.0.20 — Art-directed *gallery* posters. 17 themes intentionally use
   typographic/illustrative covers instead of repeating identical stock photos.
   Actual customer/event media and demo featured images are not altered. */
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic{background:var(--art-bg,#182832)!important;color:var(--art-ink,#fff)!important;position:relative;isolation:isolate;overflow:hidden}
.ti-demo-gallery .ti-gallery-art .ti-demo-darken{display:none!important}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic .ti-kicker,
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic strong,
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic small{color:var(--art-ink,#fff)!important;position:relative;z-index:3;text-shadow:none!important}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic strong{max-width:100%;overflow-wrap:break-word;hyphens:none;word-break:normal}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic .ti-gallery-art-mark{position:absolute;pointer-events:none;display:block;z-index:0;border:var(--art-mark-border,2px solid var(--art-decor,#fff));background:var(--art-mark-bg,transparent);width:var(--art-mark-width,170px);height:var(--art-mark-height,170px);left:var(--art-mark-left,auto);right:var(--art-mark-right,-25px);top:var(--art-mark-top,-35px);border-radius:var(--art-mark-radius,50%);transform:var(--art-mark-transform,none);opacity:var(--art-mark-opacity,.7)}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic::before{z-index:1;pointer-events:none;opacity:var(--art-line-opacity,.65);border-color:var(--art-decor,#fff)}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic::after{content:"";position:absolute;z-index:0;inset:auto 12px 12px auto;width:35%;height:8px;opacity:.8;background:var(--art-decor,#fff);pointer-events:none}
.ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic small{letter-spacing:0!important;text-transform:none!important}
/* Wedding styles: five clearly different graphic stories. */
.ti-demo-gallery .ti-gallery-design-atelier{--art-bg:linear-gradient(145deg,#f6e6da 0%,#ebc7b5 100%);--art-ink:#553137;--art-decor:#b06f6a;--art-mark-border:2px solid #b06f6a;--art-mark-width:245px;--art-mark-height:265px;--art-mark-radius:48% 48% 3% 3%;--art-mark-right:-75px;--art-mark-top:-65px}
.ti-demo-gallery .ti-gallery-design-atelier .ti-demo-cover-photographic strong{font:400 clamp(39px,4vw,57px)/.98 Georgia,serif!important;font-style:italic!important;letter-spacing:-.07em!important}
.ti-demo-gallery .ti-gallery-design-vows{--art-bg:linear-gradient(105deg,#f8f8f4 0%,#f8f8f4 52%,#e3e7df 52%,#e3e7df 100%);--art-ink:#1e3431;--art-decor:#6c9189;--art-mark-border:0;--art-mark-bg:#a4b5a8;--art-mark-radius:0;--art-mark-width:50px;--art-mark-height:100%;--art-mark-top:0;--art-mark-right:14%}
.ti-demo-gallery .ti-gallery-design-vows .ti-demo-cover-photographic strong{font:800 clamp(40px,4vw,55px)/.88 Arial,sans-serif!important;text-transform:uppercase;letter-spacing:-.09em!important}
.ti-demo-gallery .ti-gallery-design-tuscany{--art-bg:linear-gradient(130deg,#8b5031,#bd895b 70%,#e8c7a1);--art-ink:#fff8e8;--art-decor:#eace9b;--art-mark-border:3px solid #d3b07c;--art-mark-width:275px;--art-mark-height:275px;--art-mark-radius:50%;--art-mark-right:-105px;--art-mark-top:10px}
.ti-demo-gallery .ti-gallery-design-tuscany .ti-demo-cover-photographic strong{font:italic 400 clamp(36px,4vw,55px)/.99 Georgia,serif!important;letter-spacing:-.06em!important}
.ti-demo-gallery .ti-gallery-design-moonlit{--art-bg:radial-gradient(circle at 78% 18%,#404458 0,#1d2237 48%,#111522 100%);--art-ink:#f7f0e8;--art-decor:#d3ba91;--art-mark-bg:#e4cca1;--art-mark-border:0;--art-mark-width:165px;--art-mark-height:165px;--art-mark-right:0;--art-mark-top:10px;--art-mark-opacity:.8}
.ti-demo-gallery .ti-gallery-design-moonlit .ti-demo-cover-photographic strong{font:400 clamp(39px,4vw,52px)/.99 Georgia,serif!important;letter-spacing:-.035em!important}
.ti-demo-gallery .ti-gallery-design-sakura{--art-bg:linear-gradient(135deg,#fbf2ee,#eedcdf 60%,#dcb7be);--art-ink:#704751;--art-decor:#b37b96;--art-mark-border:9px dotted #bc8097;--art-mark-width:210px;--art-mark-height:210px;--art-mark-top:-40px;--art-mark-right:-45px}
.ti-demo-gallery .ti-gallery-design-sakura .ti-demo-cover-photographic strong{font:italic 400 clamp(34px,4vw,49px)/1.05 Georgia,serif!important}
/* Business: keynote blueprint, executive paper, vivid branding, dark social. */
.ti-demo-gallery .ti-gallery-design-keynote{--art-bg:linear-gradient(145deg,#113b5d,#0b1d31);--art-ink:#eaf7ff;--art-decor:#55b9dc;--art-mark-border:0;--art-mark-bg:repeating-linear-gradient(0deg,transparent 0 12px,#2f6c83 12px 13px);--art-mark-width:55%;--art-mark-height:100%;--art-mark-top:0;--art-mark-right:-8px;--art-mark-radius:0}
.ti-demo-gallery .ti-gallery-design-keynote .ti-demo-cover-photographic strong{font:800 clamp(40px,4vw,58px)/.92 Arial,sans-serif!important;letter-spacing:-.08em!important}
.ti-demo-gallery .ti-gallery-design-boardroom{--art-bg:linear-gradient(120deg,#f5efe3 0%,#f3e5cc 100%);--art-ink:#1f3a2e;--art-decor:#b1874b;--art-mark-border:1px solid #ac8f67;--art-mark-width:190px;--art-mark-height:270px;--art-mark-radius:0;--art-mark-top:22px;--art-mark-right:-80px;--art-mark-transform:rotate(11deg)}
.ti-demo-gallery .ti-gallery-design-boardroom .ti-demo-cover-photographic strong{font:500 clamp(37px,4vw,51px)/1.02 Georgia,serif!important;letter-spacing:-.035em!important}
.ti-demo-gallery .ti-gallery-design-brandlab{--art-bg:linear-gradient(145deg,#eec3b1,#e7a3af 52%,#cf728c);--art-ink:#21172b;--art-decor:#272036;--art-mark-border:0;--art-mark-bg:repeating-conic-gradient(from 30deg,#523049 0 12deg,transparent 13deg 31deg);--art-mark-width:200px;--art-mark-height:200px;--art-mark-top:-55px;--art-mark-right:-45px}
.ti-demo-gallery .ti-gallery-design-brandlab .ti-demo-cover-photographic strong{font:900 clamp(40px,4vw,58px)/.88 Arial,sans-serif!important;text-transform:uppercase;letter-spacing:-.095em!important}
.ti-demo-gallery .ti-gallery-design-social{--art-bg:linear-gradient(145deg,#192333,#35415a 55%,#70576b);--art-ink:#fff8ea;--art-decor:#d4a87d;--art-mark-border:3px double #edbc8d;--art-mark-width:250px;--art-mark-height:250px;--art-mark-top:-110px;--art-mark-right:-80px}
.ti-demo-gallery .ti-gallery-design-social .ti-demo-cover-photographic strong{font:700 clamp(37px,4vw,50px)/.92 Georgia,serif!important;letter-spacing:-.06em!important}
/* Celebrations: compact high-contrast graphics, not another stock-photo card. */
.ti-demo-gallery .ti-gallery-design-milestone{--art-bg:linear-gradient(155deg,#f6bec9 0%,#e8889f 75%);--art-ink:#50263d;--art-decor:#a83c68;--art-mark-border:14px solid #fff0e5;--art-mark-width:155px;--art-mark-height:155px;--art-mark-top:-30px;--art-mark-right:-30px}
.ti-demo-gallery .ti-gallery-design-milestone .ti-demo-cover-photographic strong{font:800 clamp(40px,4vw,55px)/.9 Arial,sans-serif!important;letter-spacing:-.09em!important}
.ti-demo-gallery .ti-gallery-design-golden60{--art-bg:linear-gradient(135deg,#4e3f29,#8d6936 50%,#b08c52);--art-ink:#fff8e7;--art-decor:#ebd4a3;--art-mark-border:1px solid #e8d2a0;--art-mark-width:165px;--art-mark-height:250px;--art-mark-radius:0;--art-mark-top:20px;--art-mark-right:25px;--art-mark-transform:rotate(15deg)}
.ti-demo-gallery .ti-gallery-design-golden60 .ti-demo-cover-photographic strong{font:italic 400 clamp(35px,4vw,50px)/1.03 Georgia,serif!important;letter-spacing:-.03em!important}
.ti-demo-gallery .ti-gallery-design-colourpop{--art-bg:radial-gradient(circle at 80% 17%,#f6c45b 0 18%,transparent 19%),radial-gradient(circle at 20% 80%,#f17aa1 0 22%,transparent 23%),linear-gradient(145deg,#6346b7,#9854b2);--art-ink:#fffaff;--art-decor:#ffe16f;--art-mark-border:0;--art-mark-bg:#ec82c3;--art-mark-width:130px;--art-mark-height:130px;--art-mark-top:30px;--art-mark-right:-35px}
.ti-demo-gallery .ti-gallery-design-colourpop .ti-demo-cover-photographic strong{font:900 clamp(40px,4vw,57px)/.9 Arial,sans-serif!important;letter-spacing:-.08em!important;text-transform:uppercase}
/* Graphic-heavy categories have recognizable poster identities. */
.ti-demo-gallery .ti-gallery-design-minimal{--art-bg:linear-gradient(90deg,#121212 0 91%,#f1f0e9 91%);--art-ink:#fff;--art-decor:#f1f0e9;--art-mark-border:0;--art-mark-bg:#e8e5dd;--art-mark-width:21px;--art-mark-height:150px;--art-mark-radius:0;--art-mark-right:3%;--art-mark-top:40px}
.ti-demo-gallery .ti-gallery-design-minimal .ti-demo-cover-photographic strong{font:600 clamp(39px,4vw,55px)/.96 Georgia,serif!important;letter-spacing:-.04em!important}
.ti-demo-gallery .ti-gallery-design-fashion{--art-bg:linear-gradient(110deg,#161616,#454545);--art-ink:#fff;--art-decor:#ececec;--art-mark-border:3px solid #aaa;--art-mark-width:50%;--art-mark-height:100%;--art-mark-radius:0;--art-mark-top:0;--art-mark-right:-1px}
.ti-demo-gallery .ti-gallery-design-fashion .ti-demo-cover-photographic strong{font:500 clamp(35px,4vw,51px)/1.01 Georgia,serif!important;letter-spacing:-.04em!important}
.ti-demo-gallery .ti-gallery-design-music{--art-bg:radial-gradient(ellipse at 75% 5%,#6043af,#281044 53%,#0c0a20);--art-ink:#fff;--art-decor:#e87afa;--art-mark-border:4px solid #c957f2;--art-mark-width:190px;--art-mark-height:190px;--art-mark-top:-40px;--art-mark-right:-15px}
.ti-demo-gallery .ti-gallery-design-music .ti-demo-cover-photographic strong{font:900 clamp(43px,4vw,60px)/.87 Arial,sans-serif!important;text-transform:uppercase;letter-spacing:-.1em!important}
.ti-demo-gallery .ti-gallery-design-festival{--art-bg:linear-gradient(130deg,#fc5e36,#f7b154);--art-ink:#1c3031;--art-decor:#1c3031;--art-mark-border:12px dashed #1c3031;--art-mark-width:210px;--art-mark-height:210px;--art-mark-top:-65px;--art-mark-right:-70px}
.ti-demo-gallery .ti-gallery-design-festival .ti-demo-cover-photographic strong{font:900 clamp(28px,3vw,41px)/.95 Arial,sans-serif!important;letter-spacing:-.055em!important;text-transform:uppercase;overflow-wrap:anywhere!important}
.ti-demo-gallery .ti-gallery-design-noir{--art-bg:linear-gradient(160deg,#090909,#28231a);--art-ink:#f6deaf;--art-decor:#d4a85f;--art-mark-border:3px double #cda251;--art-mark-width:230px;--art-mark-height:295px;--art-mark-radius:0;--art-mark-top:-30px;--art-mark-right:-70px}
.ti-demo-gallery .ti-gallery-design-noir .ti-demo-cover-photographic strong{font:500 clamp(39px,4vw,55px)/.95 Georgia,serif!important;letter-spacing:-.04em!important}
@media(max-width:580px){
 .ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic{min-height:280px}
 .ti-demo-gallery .ti-gallery-art .ti-demo-cover-photographic strong{font-size:clamp(29px,9vw,44px)!important;line-height:1.04!important}
}
@media(prefers-reduced-motion:reduce){.ti-template-filter .ti-template-chip-viewport{scroll-behavior:auto}}

/* 1.0.28 – restore photographic covers throughout the public gallery and customer studio. */
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic{
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  justify-content:flex-end!important;align-items:flex-start!important;text-align:left!important;
  padding:26px!important;min-height:320px;
}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic>:not(.ti-demo-darken){text-align:left!important}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic::before,
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic::after{display:none!important}
.ti-demo-gallery .ti-demo-card .ti-demo-darken{
  display:block!important;
  background:linear-gradient(180deg,rgba(5,12,19,.05) 5%,rgba(5,12,19,.12) 36%,rgba(5,12,19,.85) 100%)!important;
}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic .ti-kicker,
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic strong,
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic small{
  color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.28)!important;
}
.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic strong{
  max-width:100%;font-size:clamp(26px,2.8vw,39px)!important;line-height:1.08!important;
  font-weight:650;overflow-wrap:break-word;text-transform:none!important;letter-spacing:-.025em!important;
}
.ti-design-picker .ti-design-tile .ti-design-swatch{
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  color:#fff!important;isolation:isolate;
}
.ti-design-picker .ti-design-tile .ti-design-swatch::after{display:none!important}
.ti-design-picker .ti-design-tile .ti-design-swatch::before{
  display:block!important;content:"";inset:0!important;width:100%!important;height:100%!important;
  background:linear-gradient(180deg,rgba(5,12,19,.15),rgba(5,12,19,.70))!important;
  z-index:0;
}
.ti-design-picker .ti-design-tile .ti-design-mini-label,
.ti-design-picker .ti-design-tile .ti-design-mini-title{
  color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.45)!important;z-index:1;position:relative;
}
@media(max-width:580px){.ti-demo-gallery .ti-demo-card .ti-demo-cover-photographic{min-height:285px;padding:20px!important}}

/* =============================================================
   The Invitation 1.0.29 – public design gallery corrections
   - Close the 1.0.20 Festival rule above: it was swallowing 1.0.28.
   - All 36 photographic covers must extend flush to card edges.
   - Remove obsolete colored split accents and poster pseudo-elements.
   - Cap headings inside narrow multi-column cards without ugly hyphens.
   Scoped to the public gallery; customer event designs are unchanged.
   ============================================================= */
.ti-demo-gallery .ti-demo-grid > .ti-demo-card{
  min-width:0;
  overflow:hidden;
}
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic{
  display:flex!important;
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
  flex-direction:column;
  gap:7px;
}
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic::before,
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic::after{
  content:none!important;
  display:none!important;
}
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic > .ti-demo-darken{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  pointer-events:none;
}
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic > strong{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%!important;
  font-size:clamp(24px,1.8vw,33px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance;
  text-transform:none!important;
  margin:4px 0 2px;
}
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic > small{
  width:100%;
  max-width:100%!important;
  min-width:0;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
  font-size:12px!important;
  line-height:1.4!important;
  letter-spacing:.065em!important;
}
@media(max-width:680px){
  .ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic > strong{
    font-size:clamp(26px,6.7vw,32px)!important;
  }
}

/* 1.0.44: Rose Polaroid keeps a full-width, correctly cropped hero at desktop. */
@media(min-width:1121px){
 body.ti-design-rose .tdr-hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(35px,4vw,80px);padding:65px clamp(40px,5vw,110px);}
 body.ti-design-rose .tdr-hero h1{font-size:clamp(58px,6vw,105px);overflow-wrap:normal;hyphens:none;}
 body.ti-design-rose .tdr-polaroid{width:100%;max-width:460px;justify-self:center;transform:rotate(3deg);}
 body.ti-design-rose .tdr-polaroid-img{height:clamp(320px,32vw,460px);}
 body.ti-design-rose .tdr-polaroid-img img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
}
/* Long German example titles must not break within a single word. */
.ti-demo-gallery .ti-gallery-design-rose .ti-demo-cover-photographic strong,
.ti-demo-gallery .ti-gallery-design-botanical .ti-demo-cover-photographic strong{font-size:clamp(21px,1.85vw,28px)!important;letter-spacing:-.057em!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;text-wrap:initial!important;max-width:100%;}
/* Gallery's title is the only H1. Suppress a separately injected WordPress post title. */
body:has(.ti-demo-gallery) h1.wp-block-post-title{display:none!important;}
body:has(.ti-demo-gallery) .wp-block-post-title:empty{display:none!important;}
body:has(.ti-demo-gallery) .entry-content{margin-block-start:0!important;padding-top:0!important;}
body:has(.ti-demo-gallery) .entry-content>.wp-block-columns:first-child{margin-block-start:0!important;}


/* =============================================================
   The Invitation 1.0.47 – live gallery fixes
   - Prevent arbitrary word breaks in long photographic demo titles
   - Remove remaining FR/IT top spacing caused by theme/page wrappers
   ============================================================= */
.ti-demo-gallery .ti-demo-card > a.ti-demo-cover-photographic > strong{
  overflow-wrap:normal!important;
  word-break:keep-all!important;
  hyphens:none!important;
  white-space:normal!important;
  text-wrap:pretty;
}
/* Long one-word titles in Blush Celebration and Botanical Garden */
.ti-demo-gallery .ti-gallery-design-rose .ti-demo-cover-photographic strong,
.ti-demo-gallery .ti-gallery-design-botanical .ti-demo-cover-photographic strong{
  font-size:clamp(18px,1.45vw,24px)!important;
  line-height:1.06!important;
  letter-spacing:-.045em!important;
  max-width:100%!important;
  overflow-wrap:normal!important;
  word-break:keep-all!important;
  hyphens:none!important;
  text-wrap:pretty!important;
}
/* Apply the same safety net to extra-long photographic titles site-wide. */
.ti-demo-gallery .ti-demo-cover-photographic strong{
  max-width:100%!important;
}
/* Collapse residual theme spacing above the public gallery, especially FR/IT pages. */
body:has(.ti-demo-gallery) .page-header,
body:has(.ti-demo-gallery) .entry-header,
body:has(.ti-demo-gallery) .post-header,
body:has(.ti-demo-gallery) .tworeg-page-header,
body:has(.ti-demo-gallery) .wp-block-post-title,
body:has(.ti-demo-gallery) .entry-title,
body:has(.ti-demo-gallery) .page-title{
  display:none!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
}
body:has(.ti-demo-gallery) main,
body:has(.ti-demo-gallery) article,
body:has(.ti-demo-gallery) .entry-content,
body:has(.ti-demo-gallery) .post-content,
body:has(.ti-demo-gallery) .wp-block-post-content,
body:has(.ti-demo-gallery) .is-layout-flow{
  margin-top:0!important;
  padding-top:0!important;
}
body:has(.ti-demo-gallery) .entry-content > :first-child,
body:has(.ti-demo-gallery) .wp-block-post-content > :first-child,
body:has(.ti-demo-gallery) .is-layout-flow > :first-child{
  margin-top:0!important;
  padding-top:0!important;
}
body:has(.ti-demo-gallery) .ti-demo-gallery.ti-app{
  margin-top:0!important;
  padding-top:18px!important;
}
body:has(.ti-demo-gallery) .ti-demo-gallery.ti-app > header{
  margin-top:0!important;
  padding-top:0!important;
}

/* 1.0.47: remove duplicate gallery content logo and tighten top copy spacing. */
body:has(.ti-demo-gallery) .ti-demo-gallery.ti-app h1{margin-top:0!important;}
body:has(.ti-demo-gallery) .ti-demo-gallery.ti-app p{margin-top:0!important;}

/* 1.0.71: «Private Dinner» – the venue picture always fills the full height of its row.
   Before, the picture had a fixed height and a strip of the row background showed below it
   whenever the text column (venue, calendar, countdown) became taller. */
@media(min-width:761px){
 body.ti-design-dinner .tdd-venue-strip{align-items:stretch}
 body.ti-design-dinner .tdd-venue-picture{position:relative;height:auto;min-height:550px;align-self:stretch}
 body.ti-design-dinner .tdd-venue-picture>img,body.ti-design-dinner .tdd-venue-picture>.ti-d-image-empty{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover}
}
