:root{--td-ink:#102f31;--td-ink2:#183e40;--td-gold:#c9a45d;--td-sand:#e8d8b8;--td-cream:#f4f0e8;--td-paper:#fbfaf7;--td-muted:#627071;--td-line:#d9dcd5;--td-white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--td-paper);color:var(--td-ink);font-family:'Manrope Variable',Manrope,sans-serif;font-size:16px;line-height:1.7;overflow-x:hidden}body p{font-size:max(14px,1rem);line-height:1.8}body a{color:inherit}body img{display:block;max-width:100%}.elementor-button{border-radius:8px!important}.elementor-widget-heading .elementor-heading-title{font-family:'Manrope Variable',Manrope,sans-serif}.elementor-widget-text-editor p:last-child{margin-bottom:0}

/* Header — same 38px + 92px structure as the approved preview. */
.td-topline,.td-header-wrap{--container-max-width:1240px}.td-topline{height:38px;color:#d9e0dc;font-size:14px;letter-spacing:.03em}.td-topline>.e-con-inner,.td-header-wrap>.e-con-inner{width:100%;max-width:1240px!important;margin:0 auto}.td-topline-row{min-height:38px!important;width:100%!important;max-width:none!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.td-topline-copy{width:auto!important}.td-topline-copy p{margin:0!important;color:#d9e0dc!important;font-size:14px!important}.td-topline-phone{width:auto!important}.td-topline-phone .elementor-button{min-height:0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--td-sand)!important;font-size:14px!important;font-weight:700!important;gap:8px}.td-topline-phone .elementor-button-icon{font-size:14px}.td-header-wrap{height:92px!important;position:sticky!important;top:0;z-index:999;background:rgba(251,250,247,.94)!important;border-bottom:1px solid rgba(16,47,49,.1);backdrop-filter:blur(18px);padding-top:0!important;padding-bottom:0!important}.td-header-main{height:92px!important;min-height:92px!important;width:100%!important;max-width:none!important;position:relative;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important}.td-brand{min-width:210px!important}.td-brand-row{width:auto!important;max-width:none!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important}.td-brand-mark{flex:0 0 52px!important;width:52px!important;max-width:52px!important}.td-brand-mark .elementor-widget-container,.td-brand-mark img{width:52px!important;height:48px!important;max-width:52px!important;object-fit:contain!important}.td-wordmark{width:auto!important;flex:0 0 auto!important;gap:0!important}.td-brand-name,.td-brand-subtitle{margin:0!important}.td-brand-name .elementor-heading-title{font-size:20px!important;line-height:1!important;font-weight:700!important;letter-spacing:.04em!important}.td-brand-subtitle .elementor-heading-title{margin-top:7px!important;font-size:14px!important;line-height:1!important;font-weight:500!important;letter-spacing:.16em!important}.td-nav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:28px!important}.td-nav>.elementor-element{width:auto!important;flex:0 0 auto!important}.td-nav .elementor-button{position:relative;min-height:auto!important;padding:12px 0!important;background:transparent!important;border:0!important;color:var(--td-ink)!important;font-size:14px!important;font-weight:650!important;box-shadow:none!important;white-space:nowrap}.td-nav .elementor-button:after{content:"";position:absolute;left:0;bottom:3px;width:0;height:1px;background:var(--td-gold);transition:.3s}.td-nav .elementor-button:hover:after{width:100%}.td-nav .td-nav-cta .elementor-button{min-height:54px!important;padding:0 24px!important;background:var(--td-gold)!important;border:1px solid var(--td-gold)!important;border-radius:8px!important;font-weight:750!important;transition:transform .3s,background .3s}.td-nav .td-nav-cta .elementor-button:after{display:none}.td-nav .td-nav-cta .elementor-button:hover{transform:translateY(-2px);background:#d6b56f!important}.td-toggle-wrap{display:none}.td-menu-toggle{display:none;border:0;background:transparent;color:var(--td-ink);padding:12px;cursor:pointer}.td-menu-toggle span{display:block;width:26px;height:1px;background:var(--td-ink);margin:7px 0;transition:.3s}

/* Shared editable Elementor sections. */
.td-kicker{margin-bottom:18px}.td-kicker .elementor-heading-title{font-size:14px!important;font-weight:750!important;line-height:1.4!important;letter-spacing:.18em!important}.td-kicker .elementor-heading-title:before{content:"";display:inline-block;width:36px;height:1px;background:var(--td-gold);vertical-align:middle;margin-right:12px}.td-serif,.td-serif *{font-family:Georgia,serif!important;font-style:italic!important;font-weight:400!important;letter-spacing:-.045em!important}.td-hero,.td-page-hero,.td-cta{position:relative;overflow:hidden}.td-hero{min-height:calc(100vh - 130px)!important}.td-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,30,32,.96) 0%,rgba(7,30,32,.86) 33%,rgba(7,30,32,.2) 66%,rgba(7,30,32,.08) 100%);z-index:0}.td-hero>.e-con-inner,.td-page-hero>.e-con-inner,.td-cta>.e-con-inner{position:relative;z-index:1}.td-hero>.e-con-inner{justify-content:center!important}.td-hero .elementor-widget-heading,.td-hero .elementor-widget-text-editor{max-width:820px}.td-hero .elementor-widget-text-editor{max-width:650px;margin-top:12px}.td-hero .elementor-widget-text-editor p{color:#d6dfdc!important;font-size:17px!important}.td-hero>.e-con-inner>.e-con{width:auto!important;max-width:100%!important;flex-direction:row!important;justify-content:flex-start!important}.td-hero>.e-con-inner>.e-con>.elementor-element{width:auto!important}.td-page-hero{min-height:390px}.td-page-hero:after,.td-cta:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(201,164,93,.2);border-radius:50%;right:-120px;top:-320px;box-shadow:0 0 0 80px rgba(201,164,93,.025),0 0 0 160px rgba(201,164,93,.018)}.td-page-hero .elementor-widget-text-editor{max-width:700px}.td-page-hero .elementor-widget-text-editor p{font-size:17px!important;color:#bdcecb!important}.td-cta:after{width:440px;height:440px;top:-180px;box-shadow:0 0 0 60px rgba(201,164,93,.03),0 0 0 120px rgba(201,164,93,.02)}
.td-page-title-row{width:100%!important;max-width:none!important;align-items:flex-end!important}.td-page-titles{gap:0!important}.td-page-index{text-align:right}.td-intro .td-text-link .elementor-button{min-height:0!important;padding:0 0 5px!important;background:transparent!important;color:var(--td-ink)!important;border:0!important;border-bottom:1px solid #b8a477!important;border-radius:0!important}.td-services-section .td-section-heading>.elementor-element:last-child{align-items:flex-end!important}.td-services-section .td-section-heading>.elementor-element:last-child .elementor-widget-button{width:auto!important}.td-services-section .td-section-heading .elementor-button{background:transparent!important;color:var(--td-ink)!important;border-color:#b6bfba!important}.td-story-points{margin-top:30px;border-top:1px solid var(--td-line)}.td-story-points p{padding:18px 0;border-bottom:1px solid var(--td-line);margin:0!important}.td-story-points strong{color:var(--td-ink)}

/* Cards and grids. */
.td-service-grid{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:0!important;margin-top:54px;border-top:1px solid var(--td-line);border-left:1px solid var(--td-line)}.td-service-grid>.td-service-card{flex:1 1 25%!important;width:25%!important;min-height:390px;border-top:0!important;border-left:0!important;border-right:1px solid var(--td-line)!important;border-bottom:1px solid var(--td-line)!important;position:relative;transition:transform .35s,box-shadow .35s,background .35s}.td-service-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(11,42,44,.08);background:#fff!important;z-index:2}.td-service-card .elementor-widget-icon{margin-top:16px}.td-service-card .elementor-icon{width:64px;height:64px;display:grid!important;place-items:center;background:var(--td-cream);font-size:28px}.td-service-card .elementor-widget-heading{margin-top:14px}.td-service-card .elementor-heading-title{letter-spacing:-.03em!important}.td-model-card{min-height:510px!important;height:100%;justify-content:flex-start!important}.td-model-card .elementor-widget-button{margin-top:auto}.td-model-card .elementor-button{padding-left:0!important;padding-right:0!important;background:transparent!important;border:0!important}.td-model-card:first-child .elementor-button{color:#fff!important}.td-image-frame{position:relative}.td-image-frame:after{content:"";position:absolute;right:-24px;bottom:-24px;width:50%;height:65%;background:var(--td-sand);z-index:0}.td-image-frame .elementor-widget-image{position:relative;z-index:1;width:100%!important}.td-image-frame .elementor-widget-image img{width:100%!important;height:650px!important;object-fit:cover!important}.td-footer a{color:inherit}.td-footer .elementor-widget-text-editor a{color:#c1cecb}.td-footer .elementor-widget-text-editor p{font-size:14px!important;line-height:2!important}.td-footer .td-kicker{margin-bottom:0}
.td-image-tall .elementor-widget-image img{height:720px!important}.td-image-label{position:absolute!important;right:-35px!important;bottom:65px!important;z-index:3!important;width:auto!important;background:var(--td-ink);padding:23px 27px}.td-image-label .elementor-heading-title{font-size:17px!important;line-height:1.4!important;letter-spacing:0!important}.elementor-widget-accordion .elementor-accordion-item{border:0!important;border-bottom:1px solid #c9c7bf!important}.elementor-widget-accordion .elementor-accordion-item:first-child{border-top:1px solid #c9c7bf!important}.elementor-widget-accordion .elementor-tab-title{padding:26px 0!important;font-size:16px!important;font-weight:700!important}.elementor-widget-accordion .elementor-tab-content{padding:0 36px 28px 0!important;border:0!important;color:var(--td-muted);font-size:14px!important;line-height:1.8}

/* Forms. */
.td-contact>.e-con-inner>.e-con{align-items:flex-start!important}.td-form-panel{padding:48px!important;box-shadow:0 22px 60px rgba(16,47,49,.08)}.td-form-wrap .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.td-form-wrap .wpcf7-form>p{margin:0}.td-form-wrap .wpcf7-form>p.full,.td-form-wrap .wpcf7-form>p.submit-row{grid-column:1/-1}.td-form-wrap label{display:block;font-size:14px!important;font-weight:800;letter-spacing:.08em;color:#526061}.td-form-wrap input,.td-form-wrap select,.td-form-wrap textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid #cbd1ce;background:transparent;padding:13px 0;color:var(--td-ink);font:inherit;outline:none;border-radius:0}.td-form-wrap textarea{border:1px solid #cbd1ce;padding:14px;resize:vertical}.td-form-wrap input:focus,.td-form-wrap select:focus,.td-form-wrap textarea:focus{border-color:var(--td-gold)}.td-form-wrap input[type=submit]{display:inline-flex;width:auto;background:var(--td-gold);border:1px solid var(--td-gold);border-radius:8px;padding:16px 24px;font-weight:800;cursor:pointer}.td-form-section{grid-column:1/-1;color:var(--td-ink);font-size:14px;font-weight:800;letter-spacing:.12em;border-bottom:1px solid var(--td-line);padding:18px 0 10px}.td-sticky-call{position:fixed;right:24px;bottom:24px;z-index:1000;width:58px;height:58px;display:grid;place-items:center;background:var(--td-gold);color:var(--td-ink);border:1px solid rgba(255,255,255,.6);border-radius:50%;box-shadow:0 12px 32px rgba(9,36,38,.25);font-size:24px;text-decoration:none;transition:transform .3s,background .3s}.td-sticky-call:hover{transform:translateY(-3px);background:#d6b56f}.td-fallback{display:flex;justify-content:space-between;padding:20px 5%;background:var(--td-ink);color:#fff}.td-fallback a{color:#fff;text-decoration:none}

/* Requested header refinements. */
.td-topline-phone .elementor-button-icon svg{width:15px!important;height:15px!important;fill:currentColor!important}
.td-nav .elementor-button-icon{display:none!important}
.td-nav .td-nav-cta .elementor-button{background:var(--td-gold)!important;color:var(--td-ink)!important;border-color:var(--td-gold)!important}
.td-brand-row>.elementor-widget-image,.td-brand-row>.td-brand-mark{flex:0 0 52px!important;width:52px!important;max-width:52px!important}
.td-brand-row>.elementor-widget-image img,.td-brand-row>.td-brand-mark img{display:block!important;width:52px!important;height:48px!important;max-width:52px!important;object-fit:contain!important}
.td-sticky-call svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Premium Contact Form 7 treatment. */
.td-form-panel{position:relative!important;overflow:hidden;border:1px solid rgba(16,47,49,.08)!important;border-top:3px solid var(--td-gold)!important;border-radius:12px!important;background:#fff!important}
.td-form-panel:before{content:"";position:absolute;right:-115px;top:-115px;width:230px;height:230px;border:1px solid rgba(201,164,93,.16);border-radius:50%;box-shadow:0 0 0 38px rgba(201,164,93,.025);pointer-events:none}
.td-form-panel>.elementor-element{position:relative;z-index:1}
.td-form-panel .wpcf7-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:24px 20px!important;margin-top:28px!important}
.td-form-panel .wpcf7-form>p{margin:0!important;min-width:0!important}
.td-form-panel .wpcf7-form>p.full,.td-form-panel .wpcf7-form>p.submit-row,.td-form-panel .wpcf7-form>.td-form-section,.td-form-panel .wpcf7-response-output{grid-column:1/-1!important}
.td-form-panel .wpcf7-form label{display:block!important;color:#354b4c!important;font-size:14px!important;font-weight:750!important;line-height:1.4!important;letter-spacing:.055em!important}
.td-form-panel .wpcf7-form-control-wrap{display:block!important;width:100%!important;margin-top:10px!important}
.td-form-panel .wpcf7-form-control:not(.wpcf7-submit){display:block!important;width:100%!important;min-height:54px!important;margin:0!important;padding:14px 16px!important;border:1px solid #d6dcd8!important;border-radius:8px!important;background:#f8f7f3!important;color:var(--td-ink)!important;font:500 15px/1.4 'Manrope Variable',Manrope,sans-serif!important;box-shadow:0 1px 0 rgba(16,47,49,.02)!important;outline:none!important;transition:border-color .2s,box-shadow .2s,background .2s!important}
.td-form-panel select.wpcf7-form-control{appearance:auto!important}
.td-form-panel textarea.wpcf7-form-control{min-height:150px!important;resize:vertical!important}
.td-form-panel .wpcf7-form-control:not(.wpcf7-submit):focus{border-color:var(--td-gold)!important;background:#fff!important;box-shadow:0 0 0 4px rgba(201,164,93,.12)!important}
.td-form-panel .wpcf7-form-control::placeholder{color:#8b9795!important;opacity:1!important}
.td-form-section{position:relative!important;margin-top:12px!important;padding:20px 0 14px 48px!important;border-bottom:1px solid var(--td-line)!important;color:var(--td-ink)!important;font-size:14px!important;font-weight:800!important;letter-spacing:.12em!important}
.td-form-section:first-child{margin-top:0!important}
.td-form-section:before{content:"";position:absolute;left:0;top:13px;width:34px;height:34px;border-radius:50%;background:var(--td-cream);border:1px solid rgba(201,164,93,.42)}
.td-form-panel .wpcf7-submit{display:inline-flex!important;width:auto!important;min-height:54px!important;margin:8px 0 0!important;padding:0 26px!important;border:1px solid var(--td-gold)!important;border-radius:8px!important;background:var(--td-gold)!important;color:var(--td-ink)!important;font-size:14px!important;font-weight:800!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(201,164,93,.2)!important;transition:transform .2s,background .2s!important}
.td-form-panel .wpcf7-submit:hover{transform:translateY(-2px);background:#d6b56f!important}
.td-form-panel .wpcf7-spinner{vertical-align:middle!important;margin-top:10px!important}
.td-form-panel .wpcf7-not-valid-tip{margin-top:7px!important;font-size:14px!important}
.td-form-panel .wpcf7-response-output{margin:0!important;padding:14px 16px!important;border-width:1px!important;border-radius:8px!important;font-size:14px!important}

/* Elementor stability rules: contain every imported element at the approved scale. */
.elementor-page .e-con-boxed>.e-con-inner{width:100%;max-width:1240px}.elementor-page .elementor-widget-image img{max-width:100%}.elementor-page .elementor-widget-button .elementor-button-content-wrapper{align-items:center;gap:12px}.elementor-page .elementor-widget-button .elementor-button-icon svg{width:18px}.elementor-page main>.elementor>.elementor-element{margin-left:0;margin-right:0}.elementor-page .elementor-element{min-width:0}.elementor-page .elementor-widget-heading .elementor-heading-title{overflow-wrap:normal;word-break:normal}.elementor-page .td-service-grid>.elementor-element{max-width:25%}.elementor-page .td-header-main>.elementor-element{min-width:0}

@media(max-width:1000px){.td-topline>.e-con-inner,.td-header-wrap>.e-con-inner{max-width:900px!important}.td-nav{gap:17px!important}.td-nav .td-nav-cta{display:none!important}.td-service-grid{flex-wrap:wrap!important}.td-service-grid>.td-service-card,.elementor-page .td-service-grid>.elementor-element{flex-basis:50%!important;width:50%!important;max-width:50%!important}.td-image-frame .elementor-widget-image img{height:570px!important}.td-model-card{padding:40px!important}}

@media(max-width:767px){body{font-size:15px}.td-topline{height:38px!important}.td-topline>.e-con-inner,.td-header-wrap>.e-con-inner{max-width:none!important;width:100%!important}.td-topline-row{flex-direction:row!important}.td-topline-copy{display:none!important}.td-topline-row{justify-content:flex-end!important}.td-header-wrap{height:76px!important}.td-header-main{height:76px!important;min-height:76px!important;flex-direction:row!important;flex-wrap:nowrap!important}.td-brand{width:auto!important;flex:1 1 auto!important;min-width:0!important}.td-brand-mark{flex-basis:42px!important;width:42px!important;max-width:42px!important}.td-brand-mark .elementor-widget-container,.td-brand-mark img{width:42px!important;height:40px!important;max-width:42px!important}.td-brand-name .elementor-heading-title{font-size:17px!important}.td-brand-subtitle .elementor-heading-title{font-size:14px!important;letter-spacing:.08em!important}.td-toggle-wrap{display:block!important;width:auto!important;flex:0 0 auto!important}.td-menu-toggle{display:block}.td-menu-toggle.is-open span:first-child{transform:translateY(4px) rotate(45deg)}.td-menu-toggle.is-open span:last-child{transform:translateY(-4px) rotate(-45deg)}.td-nav{display:none!important;position:absolute!important;left:-17px!important;right:-17px!important;top:76px!important;width:auto!important;background:var(--td-paper);padding:24px 22px 30px!important;box-shadow:0 20px 50px rgba(16,47,49,.15);flex-direction:column!important;align-items:stretch!important;gap:0!important;z-index:1000}.td-nav.is-open{display:flex!important}.td-nav>.elementor-element{width:100%!important}.td-nav .elementor-button{width:100%;justify-content:flex-start;padding:14px 0!important;border-bottom:1px solid var(--td-line)!important}.td-nav .td-nav-cta{display:block!important;margin-top:16px}.td-nav .td-nav-cta .elementor-button{justify-content:center;border-bottom:0!important}.td-hero{min-height:760px!important}.td-hero:before{background:linear-gradient(0deg,rgba(7,30,32,.99),rgba(7,30,32,.93) 48%,rgba(7,30,32,.2))}.td-hero>.e-con-inner{justify-content:flex-end!important;padding-top:260px!important;padding-bottom:70px!important}.td-hero .elementor-widget-text-editor p,.td-page-hero .elementor-widget-text-editor p{font-size:15px!important}.td-hero>.e-con-inner>.e-con{flex-direction:column!important;width:100%!important}.td-hero>.e-con-inner>.e-con>.elementor-element{width:100%!important}.td-hero .elementor-button{width:100%}.td-page-title-row{flex-direction:column!important;align-items:flex-start!important}.td-page-index{display:none!important}.td-service-grid{margin-top:42px}.td-service-grid>.td-service-card,.elementor-page .td-service-grid>.elementor-element{flex-basis:100%!important;width:100%!important;max-width:100%!important;min-height:335px}.td-model-card{width:100%!important;min-height:500px!important;padding:40px 28px!important}.td-image-frame .elementor-widget-image img,.td-image-tall .elementor-widget-image img{height:510px!important}.td-image-label{right:-5px!important;bottom:36px!important}.td-form-panel{padding:28px 20px!important}.td-form-wrap .wpcf7-form{grid-template-columns:1fr}.td-form-wrap .wpcf7-form>p.full,.td-form-wrap .wpcf7-form>p.submit-row{grid-column:auto}.td-form-wrap input[type=submit]{width:100%}.td-sticky-call{right:17px;bottom:17px;width:54px;height:54px}.td-page-hero{min-height:0}.td-page-hero:after{right:-420px}}

@media(max-width:767px){.td-brand-row>.elementor-widget-image,.td-brand-row>.td-brand-mark{flex-basis:42px!important;width:42px!important;max-width:42px!important}.td-brand-row>.elementor-widget-image img,.td-brand-row>.td-brand-mark img{width:42px!important;height:40px!important;max-width:42px!important}.td-form-panel .wpcf7-form{grid-template-columns:1fr!important}.td-form-panel .wpcf7-form>p.full,.td-form-panel .wpcf7-form>p.submit-row{grid-column:auto!important}.td-form-panel .wpcf7-submit{width:100%!important}}
@media(max-width:390px){.td-brand-subtitle{display:none}.td-brand{min-width:160px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* v1.3 — strict header alignment and regular-weight form values. */
@media(min-width:1001px){
  .td-header-main{display:grid!important;grid-template-columns:minmax(250px,1fr) auto minmax(210px,1fr) 0!important;column-gap:28px!important}
  .td-header-main>.td-brand,.td-header-main>.td-nav,.td-header-main>.td-header-cta,.td-header-main>.td-toggle-wrap{width:auto!important;max-width:none!important;min-width:0!important}
  .td-nav{justify-self:center!important;justify-content:center!important}
  .td-header-cta{justify-self:end!important;align-items:flex-end!important}
}
.td-topline-row{width:100%!important;max-width:none!important;flex:1 1 100%!important;justify-content:space-between!important}
.td-topline-row>.elementor-element{width:auto!important;max-width:none!important;flex:0 0 auto!important}
.td-topline-copy{margin-right:auto!important}
.td-topline-phone{margin-left:auto!important}
.td-nav .elementor-button{padding:12px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-weight:500!important}
.td-mobile-nav-cta{display:none!important}
.td-header-cta>.elementor-element{width:auto!important}
.td-header-cta .elementor-button{min-height:54px!important;padding:0 24px!important;border:1px solid var(--td-gold)!important;border-radius:8px!important;background:var(--td-gold)!important;color:var(--td-ink)!important;font-size:14px!important;font-weight:700!important;white-space:nowrap!important;box-shadow:none!important}
.td-form-panel .wpcf7-form-control:not(.wpcf7-submit),.td-form-panel .wpcf7-form-control:not(.wpcf7-submit) option{font-weight:400!important}

@media(max-width:1000px){
  .td-header-cta{display:none!important}
}
@media(max-width:767px){
  .td-header-main{display:flex!important}
  .td-nav .td-mobile-nav-cta{display:block!important;margin-top:16px!important}
  .td-nav .td-mobile-nav-cta .elementor-button{justify-content:center!important;padding:16px 20px!important;border:1px solid var(--td-gold)!important;border-radius:8px!important;background:var(--td-gold)!important;color:var(--td-ink)!important;font-weight:700!important}
}

/* v1.7 — Elementor 4.2 container compatibility and real sticky header. */
.td-no-padding{padding:0!important}
.td-layout-row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important}
.td-gap-0{gap:0!important}.td-gap-12{gap:12px!important}.td-gap-14{gap:14px!important}.td-gap-30{gap:30px!important}.td-gap-34{gap:34px!important}.td-gap-40{gap:40px!important}.td-gap-45{gap:45px!important}.td-gap-60{gap:60px!important}.td-gap-70{gap:70px!important}.td-gap-80{gap:80px!important}.td-gap-85{gap:85px!important}
.td-header-wrap{position:relative!important;top:auto!important}
.td-header-wrap.is-sticky{position:fixed!important;top:0!important;right:0!important;left:0!important;width:100%!important;z-index:9999!important;box-shadow:0 10px 30px rgba(9,36,38,.12)!important}
body.admin-bar .td-header-wrap.is-sticky{top:32px!important}
@media(max-width:782px){body.admin-bar .td-header-wrap.is-sticky{top:46px!important}}
@media(max-width:767px){
  .td-layout-row{flex-direction:column!important}
  .td-topline-row,.td-header-main,.td-brand-row{flex-direction:row!important}
  .td-gap-mobile-45{gap:45px!important}
  .td-topline-row,.td-header-main{gap:0!important}
}

/* v1.4 — exact desktop header geometry from the approved preview. */
.td-topline,
.td-topline>.e-con-inner,
.td-topline-row{height:38px!important;min-height:38px!important}
.td-topline>.e-con-inner,
.td-header-wrap>.e-con-inner{width:min(1240px,calc(100% - 64px))!important;max-width:1240px!important;margin:0 auto!important;padding:0!important}
.td-topline-row{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between!important;gap:0!important;padding:0!important;margin:0!important}
.td-topline-copy,.td-topline-phone{width:auto!important;max-width:none!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
.td-topline-phone-link{display:inline-flex!important;align-items:center!important;gap:8px!important;color:var(--td-sand)!important;font-size:14px!important;font-weight:700!important;line-height:1!important;text-decoration:none!important;white-space:nowrap!important}
.td-topline-phone-link svg{display:block;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.td-header-wrap,
.td-header-wrap>.e-con-inner,
.td-header-main{height:92px!important;min-height:92px!important;max-height:92px!important}
.td-header-wrap{padding:0!important}
.td-header-wrap>.e-con-inner{display:flex!important;align-items:center!important}
.td-header-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;align-items:center!important;gap:0!important}
.td-brand,.td-brand-row,.td-wordmark,.td-header-cta{min-height:0!important;margin:0!important;padding:0!important}
.td-brand-row{gap:12px!important}
.td-wordmark{width:auto!important;max-width:none!important;min-width:0!important;flex:0 0 auto!important;align-items:flex-start!important}
.td-brand-name,.td-brand-subtitle{width:auto!important;max-width:none!important;white-space:nowrap!important}
.td-brand-name .elementor-heading-title{font-size:20px!important;font-weight:700!important;line-height:1!important;letter-spacing:.04em!important;white-space:nowrap!important}
.td-brand-subtitle .elementor-heading-title{margin-top:7px!important;font-size:9px!important;font-weight:500!important;line-height:1!important;letter-spacing:.25em!important;white-space:nowrap!important}
.td-header-cta .elementor-button-content-wrapper{gap:16px!important}
.td-header-cta .elementor-button-icon{display:inline-flex!important}
.td-header-cta .elementor-button-icon svg{width:19px!important;height:19px!important}

@media(min-width:1001px){
  .td-header-main{display:grid!important;grid-template-columns:210px minmax(0,1fr) auto 0!important;column-gap:34px!important}
  .td-brand{justify-self:start!important;width:210px!important;max-width:210px!important}
  .td-nav{justify-self:end!important;justify-content:flex-end!important;gap:34px!important}
  .td-header-cta{justify-self:end!important;width:auto!important;max-width:none!important}
  .td-toggle-wrap{display:none!important;width:0!important}
}

@media(max-width:1000px){
  .td-topline>.e-con-inner,.td-header-wrap>.e-con-inner{width:min(900px,calc(100% - 40px))!important}
}

@media(max-width:767px){
  .td-topline>.e-con-inner,.td-header-wrap>.e-con-inner{width:calc(100% - 34px)!important}
  .td-header-wrap,.td-header-wrap>.e-con-inner,.td-header-main{height:76px!important;min-height:76px!important;max-height:76px!important}
  .td-brand-subtitle .elementor-heading-title{font-size:7px!important;letter-spacing:.25em!important}
}

/* v1.6 — native Elementor flex alignment plus a header-only fallback. */
.td-topline,.td-header-wrap{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important}
.td-topline>.e-con-inner,.td-header-wrap>.e-con-inner,.td-topline>.td-topline-row,.td-header-wrap>.td-header-main{width:min(1240px,calc(100% - 64px))!important;max-width:1240px!important;margin-right:auto!important;margin-left:auto!important}
.td-topline-copy{margin-right:auto!important}
.td-topline-phone{margin-left:auto!important}
.td-header-main{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between!important}
.td-nav{flex:1 1 auto!important;justify-content:flex-end!important;margin-left:auto!important}
@media(max-width:1000px){
  .td-topline>.e-con-inner,.td-header-wrap>.e-con-inner,.td-topline>.td-topline-row,.td-header-wrap>.td-header-main{width:min(900px,calc(100% - 40px))!important}
}
@media(max-width:767px){
  .td-topline>.e-con-inner,.td-header-wrap>.e-con-inner,.td-topline>.td-topline-row,.td-header-wrap>.td-header-main{width:calc(100% - 34px)!important}
  .td-nav{margin-left:0!important}
}

/* v1.8 — only the four approved refinements. */
.td-nav .td-nav-cta .elementor-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:54px!important;line-height:1!important}
.td-nav .td-nav-cta .elementor-button-content-wrapper{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:100%!important}
.td-nav .td-nav-cta .elementor-button-text{display:inline-flex!important;align-items:center!important;height:100%!important;line-height:1!important}

/* Elementor 4.2 may add td-no-padding at runtime; form panels must retain breathing room. */
.td-form-panel.td-no-padding{padding:48px!important}

/* The three About values fill the same 1240px boxed row on existing and fresh imports. */
.td-about-values,.td-three-card-grid{display:flex!important;flex-flow:row nowrap!important;width:100%!important;max-width:none!important;gap:0!important}
.td-about-values>.td-service-card,.td-three-card-grid>.td-service-card{flex:1 1 33.333%!important;width:33.333%!important;max-width:33.333%!important}

@media(max-width:1000px){
  .td-about-values>.td-service-card,.td-three-card-grid>.td-service-card{flex-basis:33.333%!important;width:33.333%!important;max-width:33.333%!important}
}

@media(max-width:767px){
  .td-about-values,.td-three-card-grid{flex-direction:column!important;gap:0!important}
  .td-about-values>.td-service-card,.td-three-card-grid>.td-service-card{flex:1 1 100%!important;width:100%!important;max-width:100%!important;min-height:0!important}
  .td-form-panel.td-no-padding{padding:28px 20px!important}
  .td-form-panel .wpcf7-form-control:not(.wpcf7-submit){font-size:16px!important}
  .td-form-panel textarea.wpcf7-form-control{min-height:160px!important}
  .td-menu-toggle{display:grid!important;place-items:center!important;min-width:48px!important;min-height:48px!important}
  .td-nav{max-height:calc(100dvh - 114px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .td-nav .elementor-button{min-height:48px!important}
  .td-services-section .td-section-heading>.elementor-element:last-child{width:100%!important;align-items:flex-start!important}
  .td-sticky-call{right:max(17px,env(safe-area-inset-right))!important;bottom:max(17px,env(safe-area-inset-bottom))!important}
  .td-page-hero .elementor-heading-title,.td-hero h1.elementor-heading-title{overflow-wrap:break-word!important;word-break:normal!important}
}

@media(max-width:390px){
  .td-form-panel.td-no-padding{padding:24px 16px!important}
  .td-form-section{padding-left:42px!important;letter-spacing:.08em!important}
  .td-image-frame .elementor-widget-image img,.td-image-tall .elementor-widget-image img{height:440px!important}
}

/* v1.10 — only the requested content, services, contact and footer refinements. */
.td-service-grid--two{flex-wrap:wrap!important}
.td-service-grid--two>.td-service-card,.elementor-page .td-service-grid--two>.elementor-element{flex:0 0 50%!important;width:50%!important;max-width:50%!important}
.td-footer-column{align-self:flex-start!important}
.td-footer-title{margin:0 0 16px!important}
.td-contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.td-contact-link{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none;line-height:1.45}
.td-contact-link>span{display:flex;flex-direction:column;gap:3px}
.td-contact-link strong{color:var(--td-ink);font-size:13px;letter-spacing:.08em}
.td-contact-link svg,.td-social-icon svg{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.td-contact-link .td-icon-fill,.td-social-icon .td-icon-fill{fill:currentColor;stroke:none}
.td-social-icon{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(201,164,93,.48);border-radius:50%;color:var(--td-gold);text-decoration:none;transition:background .2s,color .2s}
.td-social-icon:hover{background:var(--td-gold);color:var(--td-ink)}
.td-contact .td-contact-links{margin:28px 0}
.td-contact .td-contact-link{color:var(--td-ink)}
.td-footer .td-contact-links{margin:0 0 22px;color:#c1cecb}
.td-footer .td-contact-link strong{color:#c9a45d}

@media(max-width:767px){
  .td-service-grid--two>.td-service-card,.elementor-page .td-service-grid--two>.elementor-element{flex-basis:100%!important;width:100%!important;max-width:100%!important}
}
