
:root{--tsq-black:#0a0807;--tsq-dark:#15110e;--tsq-ivory:#f6f0e7;--tsq-gold:#caa35e;--tsq-gold2:#e5ca8c;--tsq-line:#d9cdbc}
*{box-sizing:border-box}body{margin:0;background:var(--tsq-ivory);font-family:Arial,Helvetica,sans-serif;color:#201a16}
a{text-decoration:none}.tsq-topbar{background:#050403;color:#e7ddcf;text-align:center;padding:8px 12px;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.tsq-header{position:sticky;top:0;z-index:999;background:rgba(10,8,7,.96);border-bottom:1px solid rgba(255,255,255,.08)}
.tsq-header-inner{width:min(1320px,94%);margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:36px}
.tsq-logo img{width:92px;height:92px;object-fit:contain;border-radius:50%}.tsq-menu ul{display:flex;list-style:none;gap:32px;margin:0;padding:0;align-items:center}
.tsq-menu a{color:#f3ece4;font-size:12.5px;letter-spacing:.115em;text-transform:uppercase;white-space:nowrap}.tsq-menu a:hover{color:var(--tsq-gold2)}
.tsq-menu-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.25);color:white;padding:9px 12px}
.tsq-footer{background:#070605;color:#c8bfb5;padding:68px 0 22px}.tsq-footer-grid{width:min(1240px,92%);margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:42px}
.tsq-footer img{width:115px}.tsq-footer h3{color:white;font-family:Georgia,serif;font-weight:400}.tsq-footer a{display:block;color:#c8bfb5;margin:8px 0}
.tsq-footer-bottom{width:min(1240px,92%);margin:40px auto 0;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:11px}
.elementor-widget-heading h1,.elementor-widget-heading h2,.elementor-widget-heading h3{font-family:Georgia,serif!important;font-weight:400}
.tsq-placeholder{min-height:360px;background:linear-gradient(145deg,#eee4d7,#c4a97e);display:flex;align-items:center;justify-content:center;text-align:center;padding:25px;color:#493d31}
.tsq-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.tsq-form input,.tsq-form textarea,.tsq-form select{width:100%;padding:14px;border:1px solid #d2c4b1;background:white}
.tsq-form textarea{min-height:140px}.tsq-form .full{grid-column:1/-1}.tsq-form button{background:#0b0908;color:white;border:0;padding:15px;text-transform:uppercase;letter-spacing:.14em}
.tsq-message{padding:12px;margin-bottom:15px}.tsq-success{background:#e7f6e7}.tsq-error{background:#fde5e5}
@media(max-width:900px){.tsq-menu{display:none}.tsq-menu.open{display:block;position:absolute;top:92px;left:0;right:0;background:#0a0807;padding:20px}.tsq-menu.open ul{display:block}.tsq-menu.open li{padding:10px 0}.tsq-menu-toggle{display:block}.tsq-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.tsq-logo img{width:92px;height:92px;object-fit:contain;border-radius:50%}.tsq-header-inner{width:min(1320px,94%);margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:36px}.tsq-footer-grid,.tsq-form{grid-template-columns:1fr}.tsq-form .full{grid-column:auto}}

/* Elementor V2 homepage refinements */
.tsq-header{box-shadow:0 8px 24px rgba(0,0,0,.20)}
.elementor-widget-image-box .elementor-image-box-img img{
  width:100%;
  height:520px;
  object-fit:cover;
}
.elementor-widget-image-box .elementor-image-box-content{
  padding:24px 24px 28px;
}
.elementor-widget-image-box .elementor-image-box-title{
  font-size:28px;
  margin-bottom:10px;
}
.elementor-widget-image-box .elementor-image-box-description{
  font-size:15px;
  line-height:1.6;
}
@media(max-width:1100px){
  .tsq-menu ul{gap:22px}
  .tsq-menu a{font-size:11px}
  .tsq-logo img{width:82px;height:82px}
}
@media(max-width:900px){
  .tsq-menu.open{top:92px}
  .tsq-logo img{width:70px;height:70px}
  .tsq-header-inner{min-height:88px}
}
@media(max-width:620px){
  .tsq-logo img{width:62px;height:62px}
  .elementor-widget-image-box .elementor-image-box-img img{height:420px}
}

/* V3 category grid fixes */
.elementor-section .elementor-column{
  min-width:0;
}
.elementor-widget-image-box{
  width:100%;
}
.elementor-widget-image-box .elementor-image-box-wrapper{
  width:100%;
}
.elementor-widget-image-box .elementor-image-box-img{
  width:100%!important;
  margin:0!important;
}
.elementor-widget-image-box .elementor-image-box-img img{
  width:100%!important;
  max-width:100%!important;
  height:520px!important;
  object-fit:cover!important;
  display:block!important;
}
.elementor-widget-image-box .elementor-image-box-content{
  width:100%!important;
  padding:24px 22px 30px!important;
  background:#fffdfa;
}
.elementor-widget-image-box .elementor-image-box-title{
  color:#201a16!important;
  font-size:28px!important;
  line-height:1.15!important;
}
.elementor-widget-image-box .elementor-image-box-description{
  color:#756d64!important;
  font-size:15px!important;
  line-height:1.65!important;
}
@media(max-width:1024px){
  .elementor-widget-image-box .elementor-image-box-img img{height:460px!important}
}
@media(max-width:767px){
  .elementor-widget-image-box .elementor-image-box-img img{height:420px!important}
}
