:root{--tde-red:#d71920;--tde-black:#111;--tde-border:#ddd;--tde-muted:#666}.tde-blog-shell,.tde-single-story{max-width:1220px;margin:0 auto;padding:56px 28px 80px;color:var(--tde-black);font-family:inherit}.tde-blog-header{text-align:center;margin-bottom:38px}.tde-blog-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;margin:0 0 8px;color:var(--tde-red)}.tde-blog-header h1,.tde-story-header h1,.tde-story-card h2,.tde-gallery-heading h2{font-family:"Cormorant Garamond",Cormorant,Georgia,serif;font-weight:500}.tde-blog-header h1{font-size:44px;line-height:1.05;letter-spacing:.08em;text-transform:uppercase;margin:0}.tde-blog-header>p:last-child{font-size:15px;margin:14px 0 0}.tde-red-rule{display:block;width:52px;height:2px;background:var(--tde-red);margin:14px auto}.tde-category-tabs{display:flex;justify-content:center;gap:44px;flex-wrap:wrap;border-bottom:1px solid #eee;margin-bottom:24px}.tde-category-tabs a{padding:0 0 13px;text-decoration:none;color:#111;text-transform:uppercase;font-size:11px;letter-spacing:.04em;border-bottom:2px solid transparent}.tde-category-tabs a:hover,.tde-category-tabs a.is-active{color:var(--tde-red);border-color:var(--tde-red)}.tde-blog-filters{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr)) minmax(230px,1.45fr);gap:14px;margin:0 0 30px}.tde-blog-filters select,.tde-blog-filters input{width:100%;height:44px;border:1px solid var(--tde-border);background:#fff;padding:0 14px;font:inherit;font-size:13px;color:#333}.tde-search-field{position:relative}.tde-search-field input{padding-right:44px}.tde-search-field button{position:absolute;right:2px;top:2px;height:40px;width:40px;border:0;background:transparent;font-size:24px;cursor:pointer}.tde-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tde-story-card{border:1px solid var(--tde-border);background:#fff;display:flex;flex-direction:column}.tde-card-image{display:block;aspect-ratio:4/3;background:#f3f3f3;overflow:hidden}.tde-card-image img{width:100%;height:100%;object-fit:cover;object-position:var(--tde-focus-x,50%) var(--tde-focus-y,50%);display:block;transition:transform .3s ease}.tde-card-image:hover img{transform:scale(1.02)}.tde-card-copy{padding:17px 16px 18px;display:flex;flex-direction:column;flex:1}.tde-card-category{margin:0 0 4px!important;color:var(--tde-red);font-size:11px;text-transform:uppercase;font-weight:600}.tde-card-copy time{font-size:11px;color:#444}.tde-story-card h2{font-size:25px;line-height:1.04;margin:9px 0}.tde-story-card h2 a{text-decoration:none;color:#111}.tde-card-copy>p:not(.tde-card-category){font-size:13px;line-height:1.45;margin:0 0 18px}.tde-read-story{margin-top:auto;text-transform:uppercase;font-size:11px;font-weight:600;color:#111;text-decoration:none}.tde-read-story span{color:var(--tde-red);font-size:18px;margin-left:6px}.tde-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:34px}.tde-pagination .page-numbers{min-width:36px;height:36px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#111}.tde-pagination .current{background:var(--tde-red);color:#fff}.tde-no-stories{text-align:center;padding:60px 20px;border:1px solid #eee}.tde-single-story{max-width:1080px}.tde-story-breadcrumbs{display:flex;gap:12px;align-items:center;text-transform:uppercase;font-size:11px;margin-bottom:30px}.tde-story-breadcrumbs a{text-decoration:none;color:#111}.tde-breadcrumb-category{color:var(--tde-red)}.tde-story-meta{display:flex;gap:10px;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.tde-story-header h1{font-size:58px;line-height:.98;margin:12px 0 0;max-width:900px}.tde-story-header .tde-red-rule{margin:16px 0;width:42px}.tde-story-intro{font-size:18px;line-height:1.45;max-width:820px}.tde-main-photo{margin:30px 0;aspect-ratio:16/9;overflow:hidden;background:#f3f3f3}.tde-main-photo img{display:block;width:100%;height:100%;margin:0;object-fit:cover;object-position:var(--tde-focus-x,50%) var(--tde-focus-y,50%)}.tde-story-content{max-width:820px;margin:0 auto;font-size:16px;line-height:1.68}.tde-story-content p{margin:0 0 1.2em}.tde-photo-section{border-top:1px solid var(--tde-border);margin-top:38px;padding-top:22px}.tde-gallery-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}.tde-gallery-heading h2{font-size:26px;text-transform:uppercase;letter-spacing:.08em;margin:0}.tde-gallery-heading span{font-size:12px;font-style:italic;color:var(--tde-muted)}.tde-masonry-gallery{columns:4 220px;column-gap:12px}.tde-gallery-item{display:block;break-inside:avoid;margin:0 0 12px;overflow:hidden;background:#f3f3f3}.tde-gallery-item img{display:block;width:100%;height:auto;transition:transform .25s}.tde-gallery-item:hover img{transform:scale(1.015)}.tde-story-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px;padding-top:18px;border-top:1px solid #eee;font-size:12px}.tde-story-tags a{color:var(--tde-red);text-decoration:none}.tde-lightbox[hidden]{display:none}.tde-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:999999;display:flex;align-items:center;justify-content:center;padding:40px}.tde-lightbox img{max-width:95vw;max-height:90vh;object-fit:contain}.tde-lightbox button{position:absolute;right:20px;top:12px;border:0;background:transparent;color:#fff;font-size:44px;cursor:pointer}.tde-lightbox-open{overflow:hidden}@media(max-width:900px){.tde-blog-filters{grid-template-columns:1fr 1fr}.tde-story-grid{grid-template-columns:1fr 1fr}.tde-story-header h1{font-size:46px}.tde-category-tabs{gap:24px}}@media(max-width:620px){.tde-blog-shell,.tde-single-story{padding:38px 18px 60px}.tde-blog-header h1{font-size:36px}.tde-blog-filters,.tde-story-grid{grid-template-columns:1fr}.tde-category-tabs{justify-content:flex-start;gap:18px;overflow-x:auto;flex-wrap:nowrap}.tde-story-header h1{font-size:38px}.tde-gallery-heading{display:block}.tde-gallery-heading span{display:block;margin-top:4px}.tde-masonry-gallery{columns:2 130px}.tde-main-photo{aspect-ratio:4/3}.tde-main-photo img{max-height:none}}

/* v2.2 story display stays inside the existing Elementor Blog page */
.tde-inline-story{max-width:1080px;margin:0 auto;padding:42px 28px 80px;background:#fff;color:#111;font-family:inherit}
.tde-back-to-blog{display:inline-block;margin-bottom:28px;color:#111;text-decoration:none;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.tde-back-to-blog:hover{color:var(--tde-red)}
.tde-inline-story .tde-story-header h1{font-size:58px;line-height:.98;margin:12px 0 0;max-width:900px}
.tde-inline-story .tde-story-header .tde-red-rule{margin:16px 0;width:42px}
.tde-inline-story .tde-main-photo img,.tde-single-story .tde-main-photo img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;display:block}
.tde-single-page-background{background:#fff;min-height:60vh}
body.single-tde_story{background:#fff!important;background-image:none!important}

/* The crop controls affect only the small archive card image. */
.tde-card-image img{object-position:var(--tde-focus-x,50%) var(--tde-focus-y,50%)}

/* Structured editorial collage, not a loose masonry stack. */
.tde-editorial-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:170px;grid-auto-flow:dense;gap:12px}
.tde-editorial-gallery .tde-gallery-item{margin:0;min-width:0;height:100%;overflow:hidden;background:#f2f2f2;border-radius:2px}
.tde-editorial-gallery .tde-gallery-item img{width:100%;height:100%;object-fit:cover;display:block}
.tde-editorial-gallery .tde-gallery-item:nth-child(8n+1){grid-column:span 2;grid-row:span 2}
.tde-editorial-gallery .tde-gallery-item:nth-child(8n+3){grid-row:span 2}
.tde-editorial-gallery .tde-gallery-item:nth-child(8n+5){grid-column:span 2}
.tde-editorial-gallery .tde-gallery-item:nth-child(8n+8){grid-column:span 2}
@media(max-width:800px){.tde-editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px}.tde-inline-story .tde-story-header h1{font-size:44px}.tde-inline-story{padding:34px 18px 60px}}
@media(max-width:480px){.tde-editorial-gallery{grid-auto-rows:125px;gap:8px}.tde-editorial-gallery .tde-gallery-item:nth-child(8n+1){grid-column:span 2;grid-row:span 2}.tde-editorial-gallery .tde-gallery-item:nth-child(8n+3){grid-row:span 2}.tde-inline-story .tde-story-header h1{font-size:36px}}

/* v2.3 square card framing with zoom */
.tde-card-image{aspect-ratio:1/1!important;overflow:hidden!important;position:relative!important}
.tde-card-image img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:var(--tde-focus-x,50%) var(--tde-focus-y,50%)!important;transform:scale(var(--tde-card-zoom,1))!important;transform-origin:var(--tde-focus-x,50%) var(--tde-focus-y,50%)!important}

/* v2.3 composed editorial gallery */
.tde-editorial-gallery{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-auto-rows:72px!important;gap:12px!important;grid-auto-flow:dense!important}
.tde-editorial-gallery .tde-gallery-item{grid-column:span 4;grid-row:span 3;margin:0!important;min-width:0;height:100%;overflow:hidden;background:#f2f2f2;border-radius:2px}
.tde-editorial-gallery .tde-gallery-item img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.tde-editorial-gallery .pattern-1{grid-column:span 7;grid-row:span 6}
.tde-editorial-gallery .pattern-2{grid-column:span 5;grid-row:span 3}
.tde-editorial-gallery .pattern-3{grid-column:span 5;grid-row:span 3}
.tde-editorial-gallery .pattern-4{grid-column:span 4;grid-row:span 4}
.tde-editorial-gallery .pattern-5{grid-column:span 4;grid-row:span 4}
.tde-editorial-gallery .pattern-6{grid-column:span 4;grid-row:span 4}
.tde-editorial-gallery .pattern-7{grid-column:span 5;grid-row:span 4}
.tde-editorial-gallery .pattern-8{grid-column:span 7;grid-row:span 4}
.tde-editorial-gallery .pattern-9{grid-column:span 6;grid-row:span 4}
.tde-editorial-gallery .pattern-10{grid-column:span 6;grid-row:span 4}
.tde-editorial-gallery .is-portrait.pattern-2,.tde-editorial-gallery .is-portrait.pattern-3{grid-row:span 5}
@media(max-width:760px){.tde-editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:135px!important;gap:8px!important}.tde-editorial-gallery .tde-gallery-item,.tde-editorial-gallery [class*="pattern-"]{grid-column:span 1!important;grid-row:span 1!important}.tde-editorial-gallery .pattern-1{grid-column:span 2!important;grid-row:span 2!important}.tde-editorial-gallery .is-portrait{grid-row:span 2!important}}

/* v2.5: stories open inside the current Elementor page, never in a WordPress post template */
.tde-story-modal[hidden]{display:none!important}
.tde-story-modal{position:fixed;inset:0;z-index:999998;background:rgba(0,0,0,.72);padding:24px;display:flex;align-items:flex-start;justify-content:center;overflow:auto}
.tde-story-modal-panel{position:relative;width:min(1120px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.tde-story-modal-content{min-height:300px;background:#fff}
.tde-story-modal-close{position:sticky;float:right;top:12px;right:14px;z-index:5;width:42px;height:42px;border:0;border-radius:50%;background:#111;color:#fff;font-size:28px;line-height:1;cursor:pointer;margin:12px 12px -54px 0}
.tde-story-open{overflow:hidden}
.tde-story-loading,.tde-story-error{padding:90px 30px;text-align:center;font-size:16px}
.tde-story-modal .tde-inline-story{max-width:none;padding:58px 54px 70px}
.tde-story-modal .tde-back-to-blog{display:none}
@media(max-width:700px){.tde-story-modal{padding:0}.tde-story-modal-panel{max-height:100vh;min-height:100vh}.tde-story-modal .tde-inline-story{padding:56px 20px 50px}.tde-story-modal-close{top:8px;right:8px}}

/* v2.5.4 justified gallery: compact rows, natural image proportions, no crop */
.tde-editorial-gallery{display:none!important}
.tde-justified-gallery{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--tde-gallery-gap,7px);width:100%}
.tde-justified-gallery .tde-gallery-item{display:block;position:relative;margin:0!important;overflow:hidden;background:#f2f2f2;min-width:0;line-height:0;border-radius:2px;flex-shrink:0}
.tde-justified-gallery .tde-gallery-item img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#f2f2f2;margin:0!important;transition:transform .2s ease}
.tde-justified-gallery .tde-gallery-item:hover img{transform:scale(1.01)}

.tde-gallery-lightbox[hidden]{display:none!important}
.tde-gallery-lightbox{position:fixed;inset:0;z-index:1000001;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:48px 76px}
.tde-gallery-lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:100%;max-height:100%}
.tde-gallery-lightbox img{display:block;max-width:calc(100vw - 170px);max-height:calc(100vh - 105px);width:auto;height:auto;object-fit:contain}
.tde-gallery-lightbox figcaption{color:#fff;font-size:12px;letter-spacing:.06em;margin-top:12px}
.tde-gallery-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.tde-gallery-lightbox button:hover{background:rgba(255,255,255,.22)}
.tde-lb-close{top:18px;right:20px;width:42px;height:42px;border-radius:50%;font-size:30px;line-height:1}
.tde-lb-prev,.tde-lb-next{top:50%;transform:translateY(-50%);width:48px;height:64px;border-radius:3px;font-size:52px;font-weight:200}
.tde-lb-prev{left:18px}.tde-lb-next{right:18px}
body.tde-lightbox-open{overflow:hidden!important}
@media(max-width:650px){
  .tde-gallery-lightbox{padding:58px 12px 48px}
  .tde-gallery-lightbox img{max-width:100%;max-height:calc(100vh - 125px)}
  .tde-lb-prev,.tde-lb-next{width:40px;height:52px;font-size:42px;background:rgba(0,0,0,.42)}
  .tde-lb-prev{left:4px}.tde-lb-next{right:4px}
  .tde-lb-close{top:10px;right:10px}
}

/* v2.5.10: prevent visible gallery reflow while image dimensions settle */
.tde-justified-gallery:not(.tde-gallery-ready){visibility:hidden}
.tde-justified-gallery.tde-gallery-ready{visibility:visible}

/* v2.6 cohesive Studio News redesign */
.tde-blog-page{position:relative;width:100vw;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;background:#f8f7f5;color:#161616}
.tde-blog-hero{position:relative;min-height:390px;overflow:hidden;display:flex;align-items:center;color:#fff;background:#111}
.tde-blog-hero:after{content:"";position:absolute;inset:-12%;background-image:var(--tde-blog-hero);background-size:calc(100% * var(--tde-blog-zoom,1));background-repeat:no-repeat;background-position:var(--tde-blog-x,50%) var(--tde-blog-y,50%);z-index:0}
.tde-blog-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,calc(var(--tde-blog-overlay,.52) + var(--tde-blog-fade,.58) * .48)) 0%,rgba(5,5,5,var(--tde-blog-overlay,.52)) 46%,rgba(5,5,5,calc(var(--tde-blog-overlay,.52) - var(--tde-blog-fade,.58) * .34)) 100%);z-index:1}
.tde-blog-hero-inner{position:relative;z-index:2;width:min(1240px,calc(100% - 64px));margin:auto;text-align:left}
.tde-blog-hero .tde-blog-eyebrow{color:var(--tde-red);font-size:12px;font-weight:800;letter-spacing:.18em;margin:0 0 10px}
.tde-blog-hero h1{font-family:"Cormorant Garamond",Cormorant,Georgia,serif;font-size:clamp(56px,7vw,92px);font-weight:500;line-height:.95;margin:0 0 18px;text-transform:none;letter-spacing:0;max-width:760px}
.tde-blog-hero .tde-red-rule{margin:0 0 18px;width:64px}
.tde-blog-subtitle{max-width:600px;font-size:18px;line-height:1.55;margin:0;color:#fff}
.tde-blog-page .tde-blog-shell{max-width:1280px;padding:42px 28px 86px}
.tde-blog-page .tde-category-tabs{justify-content:flex-start;gap:12px;border:0;margin:0 0 22px}
.tde-blog-page .tde-category-tabs a{border:1px solid #d7d3ce;border-radius:999px;padding:10px 17px;background:#fff;font-weight:700}
.tde-blog-page .tde-category-tabs a:hover,.tde-blog-page .tde-category-tabs a.is-active{background:var(--tde-red);border-color:var(--tde-red);color:#fff}
.tde-blog-page .tde-blog-filters{grid-template-columns:170px 170px minmax(250px,1fr);padding:18px;background:#fff;border:1px solid #e4e0db;border-radius:6px;margin-bottom:34px}
.tde-blog-page .tde-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tde-blog-page .tde-story-card{border:0;border-radius:7px;overflow:hidden;box-shadow:0 10px 28px rgba(20,20,20,.08);transition:transform .25s ease,box-shadow .25s ease}
.tde-blog-page .tde-story-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,20,20,.13)}
.tde-blog-page .tde-story-card.tde-story-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);min-height:430px}
.tde-blog-page .tde-story-featured .tde-card-image{aspect-ratio:auto!important;min-height:430px}
.tde-blog-page .tde-story-featured .tde-card-copy{padding:50px 46px;justify-content:center}
.tde-blog-page .tde-story-featured h2{font-size:clamp(38px,4vw,58px)}
.tde-blog-page .tde-story-featured .tde-card-copy>p:not(.tde-card-category){font-size:16px;line-height:1.6}
.tde-blog-page .tde-card-copy{padding:22px 22px 24px}
.tde-blog-page .tde-story-card h2{font-size:29px;line-height:1.02}
.tde-blog-page .tde-card-category{font-weight:800;letter-spacing:.08em}
.tde-blog-page .tde-read-story{font-weight:800;letter-spacing:.06em}
@media(max-width:900px){.tde-blog-page .tde-story-card.tde-story-featured{grid-template-columns:1fr}.tde-blog-page .tde-story-featured .tde-card-image{min-height:360px}.tde-blog-page .tde-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tde-blog-hero{min-height:320px}.tde-blog-hero-inner{width:calc(100% - 34px)}.tde-blog-hero h1{font-size:52px}.tde-blog-subtitle{font-size:16px}.tde-blog-page .tde-blog-shell{padding:28px 16px 60px}.tde-blog-page .tde-blog-filters{grid-template-columns:1fr}.tde-blog-page .tde-story-grid{grid-template-columns:1fr}.tde-blog-page .tde-story-featured .tde-card-image{min-height:280px}.tde-blog-page .tde-story-featured .tde-card-copy{padding:28px 24px}}

/* v2.7.2: true left-edge Studio News hero alignment and TDE typography lock */
.tde-blog-page,
.tde-blog-page *{
  box-sizing:border-box;
}
.tde-blog-page{
  font-family:var(--tde-home-body,var(--e-global-typography-text-font-family,inherit))!important;
}
.tde-blog-hero{
  justify-content:flex-start!important;
  text-align:left!important;
}
.tde-blog-hero-inner{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:clamp(42px,5.2vw,92px)!important;
  padding-right:clamp(32px,5vw,80px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  text-align:left!important;
}
.tde-blog-hero-inner > *,
.tde-blog-hero .tde-blog-eyebrow,
.tde-blog-hero h1,
.tde-blog-hero .tde-red-rule,
.tde-blog-hero .tde-blog-subtitle{
  text-align:left!important;
  align-self:flex-start!important;
  margin-left:0!important;
  margin-right:0!important;
}
.tde-blog-hero h1,
.tde-blog-page .tde-story-card h2,
.tde-blog-page .tde-story-card h2 a,
.tde-blog-page .tde-blog-header h1{
  font-family:var(--tde-home-display,"Cormorant Garamond",Cormorant,Georgia,serif)!important;
  font-style:normal!important;
  font-weight:500!important;
  letter-spacing:-.025em!important;
}
.tde-blog-hero h1{
  line-height:.91!important;
  letter-spacing:-.035em!important;
}
.tde-blog-hero .tde-blog-eyebrow,
.tde-blog-hero .tde-blog-subtitle,
.tde-blog-page p,
.tde-blog-page a,
.tde-blog-page button,
.tde-blog-page input,
.tde-blog-page select,
.tde-blog-page time,
.tde-blog-page small{
  font-family:var(--tde-home-body,var(--e-global-typography-text-font-family,inherit))!important;
}
@media(max-width:620px){
  .tde-blog-hero-inner{
    width:100%!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
}
