/* =====================================================================
   TakeWorks Site — design system for Elementor containers + widgets.
   Layout: the whole site is shot through a camera viewfinder — fixed
   brackets, REC timecode, chapter timeline; dark set bands alternate
   with paper bands like the brochure.
   ===================================================================== */
:root{
  --tw-ink:#0b0b0a; --tw-ink-2:#151411; --tw-ink-3:#1d1b18;
  --tw-paper:#f1f1ec; --tw-paper-2:#e4e4dd;
  --tw-dim:#8c8b84; --tw-dim-ink:#5c5b56;
  --tw-rec:#7cc3ef; --tw-navy:#24407a;
  --tw-line:rgba(241,241,236,.16); --tw-line-ink:rgba(11,11,10,.16);
  --tw-warm:#16264d; --tw-teal:#1d3a3a; --tw-plum:#1b1f4a;
  --tw-f-display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --tw-f-it:"Marcellus","Trajan Pro",Georgia,"Times New Roman",serif;
  --tw-f-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --tw-gut:max(clamp(16px,5vw,84px), env(safe-area-inset-left,0px));
  --tw-gut-r:max(clamp(16px,5vw,84px), env(safe-area-inset-right,0px));
  --tw-ease:cubic-bezier(.2,.7,.1,1);
}

/* ---------- base + resets over Hello Elementor ---------- */
html{scroll-behavior:smooth}
body.tw-site{background:var(--tw-ink);color:var(--tw-paper);font-family:var(--tw-f-display);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.tw-site ::selection{background:var(--tw-rec);color:var(--tw-ink)}
body.tw-site a{color:inherit}
body.tw-site [hidden]{display:none!important}
body.tw-site a:hover,body.tw-site a:focus{color:inherit}
body.tw-site :focus-visible{outline:2px solid var(--tw-rec);outline-offset:3px}
body.tw-site .elementor-widget .elementor-heading-title{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;text-transform:inherit;margin:0;padding:0}
body.tw-site .elementor-widget-text-editor{color:inherit;font:inherit}
body.tw-site .elementor-widget-text-editor p{margin:0}
body.tw-site .elementor-widget-text-editor p+p{margin-top:.6em}
body.tw-site .elementor-widget-image img{display:block}
body.tw-site .e-con.tw-c{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
body.tw-site .tw-grid{display:grid!important}
body.tw-site .e-con.tw-c>.elementor-widget{max-width:100%;min-width:0}
body.tw-site .e-con.tw-c>.e-con{min-width:0}

/* band + wrap */
body.tw-site .e-con.tw-sec{width:100%;position:relative}
body.tw-site .e-con.tw-wrap{width:100%;max-width:1360px;margin-left:auto!important;margin-right:auto!important;padding-left:var(--tw-gut)!important;padding-right:var(--tw-gut-r)!important}
body.tw-site .tw-dark{background:var(--tw-ink);color:var(--tw-paper)}
body.tw-site .tw-paper{background:var(--tw-paper);color:var(--tw-ink)}
body.tw-site .tw-pad{padding-top:clamp(90px,11vw,150px)!important;padding-bottom:clamp(90px,11vw,150px)!important}

/* ---------- type ---------- */
body.tw-site .tw-mono{font-family:var(--tw-f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;line-height:1.5}
body.tw-site .tw-it{font-family:var(--tw-f-it);text-transform:none;font-weight:400}
body.tw-site .tw-mono.tw-it{font-size:14px;letter-spacing:.02em}
body.tw-site .tw-display{font-family:var(--tw-f-display);font-weight:800;font-stretch:125%;font-variation-settings:"wdth" 125;line-height:.9;letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance}
body.tw-site .tw-h2{font-weight:600;font-size:clamp(28px,3.6vw,50px);line-height:1.06;letter-spacing:-.022em;text-wrap:balance;max-width:20ch}
body.tw-site .tw-dim{color:var(--tw-dim)}
body.tw-site .tw-paper .tw-dim{color:var(--tw-dim-ink)}
body.tw-site .tw-dot{display:inline-block;width:.42em;height:.42em;border-radius:50%;background:var(--tw-rec);flex:none}
body.tw-site .tw-eyebrow{margin-bottom:34px}
body.tw-site .tw-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:10px}
body.tw-site .tw-eyebrow .elementor-heading-title::before{content:"";width:.5em;height:.5em;border-radius:50%;background:var(--tw-rec);flex:none}
body.tw-site .tw-paper .tw-eyebrow .elementor-heading-title::before,body.tw-site .tw-paper .tw-dot{background:var(--tw-navy)}
body.tw-site .tw-lbl{color:var(--tw-dim);margin-bottom:12px}
body.tw-site .tw-paper .tw-lbl{color:var(--tw-dim-ink)}

/* links shaped like the prototype */
body.tw-site .tw-more{margin-top:28px;align-self:flex-start;width:auto!important}
body.tw-site .tw-more .elementor-button{background:none!important;color:inherit!important;padding:0 0 4px!important;border-radius:0!important;border:0!important;border-bottom:1px solid currentColor!important;font-family:var(--tw-f-it);font-size:14px;letter-spacing:.02em;text-transform:none;line-height:1.4;transition:padding .25s var(--tw-ease)}
body.tw-site .tw-more .elementor-button:hover{padding-right:8px!important}
body.tw-site .tw-ghost{width:auto!important;align-self:flex-start}
body.tw-site .tw-ghost .elementor-button,body.tw-site .tw-ghost-btn{display:inline-flex;align-items:center;background:none!important;color:inherit!important;border:1px solid var(--tw-line)!important;border-radius:0!important;padding:10px 16px!important;font-family:var(--tw-f-it);font-size:14px;letter-spacing:.02em;text-transform:none;line-height:1.3;text-decoration:none;cursor:pointer}
body.tw-site .tw-ghost .elementor-button:hover,body.tw-site .tw-ghost-btn:hover{border-color:var(--tw-paper)!important}

/* ---------- global overlays ---------- */
.tw-grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:9990;opacity:.07;animation:tw-grain 1s steps(6) infinite}
@keyframes tw-grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.tw-vf{position:fixed;inset:0;pointer-events:none;z-index:9980}
.tw-vf i{position:absolute;width:26px;height:26px;border-color:rgba(241,241,236,.55);border-style:solid;border-width:0;mix-blend-mode:difference}
.tw-vf .tl{top:calc(14px + env(safe-area-inset-top,0px));left:max(14px,env(safe-area-inset-left,0px));border-top-width:1px;border-left-width:1px}
.tw-vf .tr{top:calc(14px + env(safe-area-inset-top,0px));right:max(14px,env(safe-area-inset-right,0px));border-top-width:1px;border-right-width:1px}
.tw-vf .bl{bottom:calc(14px + env(safe-area-inset-bottom,0px));left:max(14px,env(safe-area-inset-left,0px));border-bottom-width:1px;border-left-width:1px}
.tw-vf .br{bottom:calc(14px + env(safe-area-inset-bottom,0px));right:max(14px,env(safe-area-inset-right,0px));border-bottom-width:1px;border-right-width:1px}
.admin-bar .tw-vf .tl,.admin-bar .tw-vf .tr{top:calc(46px + env(safe-area-inset-top,0px))}

.tw-cut{position:fixed;inset:0;z-index:9995;background:var(--tw-ink);color:var(--tw-paper);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .42s ease}
.tw-cut.on,.tw-arriving .tw-cut{opacity:1;pointer-events:auto;transition:none}
.tw-slate2{display:grid;gap:14px;justify-items:center;text-align:center;padding-inline:16px}
.tw-cut .tw-s1{color:var(--tw-dim);display:flex;gap:10px;align-items:center}
.tw-cut .tw-s2{font-size:clamp(40px,8vw,120px)}
.tw-cut .tw-s3{color:var(--tw-dim);font-variant-numeric:tabular-nums}
.tw-cut.on .tw-s2,.tw-arriving .tw-cut .tw-s2{animation:tw-rise .5s var(--tw-ease) both}

.tw-timeline{position:fixed;left:0;right:0;bottom:0;z-index:9970;padding-bottom:calc(22px + env(safe-area-inset-bottom,0px));padding-left:max(52px,calc(env(safe-area-inset-left,0px) + 38px));padding-right:max(52px,calc(env(safe-area-inset-right,0px) + 38px));mix-blend-mode:difference;color:var(--tw-paper);pointer-events:none}
.tw-track{position:relative;height:1px;background:rgba(241,241,236,.3)}
.tw-fill{position:absolute;inset:0 auto 0 0;width:var(--pct,0%);background:var(--tw-paper)}
.tw-chapters{display:flex;justify-content:space-between;margin-top:8px;pointer-events:auto}
.tw-chapters a{text-decoration:none;opacity:.5;font-size:10.5px;transition:opacity .2s;color:var(--tw-paper)!important}
.tw-chapters a.on{opacity:1}

/* ---------- header (Theme Builder template) ---------- */
body.tw-site .elementor-location-header{position:relative;z-index:9960}
body.tw-site .e-con.tw-header{position:fixed!important;top:0;left:0;right:0;z-index:9960;display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding-top:calc(24px + env(safe-area-inset-top,0px))!important;padding-bottom:10px!important;padding-left:max(44px,calc(env(safe-area-inset-left,0px) + 30px))!important;padding-right:max(44px,calc(env(safe-area-inset-right,0px) + 30px))!important;mix-blend-mode:difference;color:var(--tw-paper);background:transparent}
body.admin-bar.tw-site .e-con.tw-header{top:32px}
body.tw-site .tw-logo{justify-self:start;width:auto!important}
body.tw-site .tw-logo img{height:22px;width:auto;max-width:none}
body.tw-site .tw-header .tw-hud-w,body.tw-site .tw-header .elementor-widget-tw-hud{justify-self:center;width:auto!important}
.tw-hud{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;min-width:0}
.tw-hud b{font-weight:500}
.tw-hud span{color:#b4b3ac;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:36vw;font-size:14px;letter-spacing:.02em;text-transform:none}
body.tw-site .e-con.tw-header-r{justify-self:end;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:18px;width:auto!important}
body.tw-site .tw-header-r>.elementor-widget{width:auto!important}
.tw-rec{display:inline-flex;align-items:center;gap:8px;font-variant-numeric:tabular-nums;white-space:nowrap}
.tw-rec .tw-dot{width:8px;height:8px;animation:tw-blink 1.2s steps(1) infinite}
@keyframes tw-blink{50%{opacity:.15}}
/* nav menu (Pro Elements) */
body.tw-site .tw-nav .elementor-nav-menu--main .elementor-item{font-family:var(--tw-f-it);font-size:14px;letter-spacing:.02em;text-transform:none;color:var(--tw-paper)!important;padding:6px 10px!important;opacity:.8}
body.tw-site .tw-nav .elementor-nav-menu--main .elementor-item:hover,body.tw-site .tw-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{opacity:1}
body.tw-site .tw-nav .elementor-nav-menu--main .elementor-item::after{background-color:var(--tw-paper)!important;height:1px!important}
body.tw-site .tw-nav .elementor-menu-toggle{background:transparent!important;color:var(--tw-paper)!important;border:1px solid var(--tw-line)!important;border-radius:0}
body.tw-site .tw-nav .elementor-menu-toggle svg{fill:var(--tw-paper)}
body.tw-site .tw-nav .elementor-nav-menu--dropdown{background:var(--tw-ink)!important;border-top:1px solid var(--tw-line)}
body.tw-site .tw-nav .elementor-nav-menu--dropdown a{font-family:var(--tw-f-display)!important;font-weight:800;font-variation-settings:"wdth" 125;text-transform:uppercase;font-size:clamp(26px,7vw,44px)!important;color:var(--tw-paper)!important;background:transparent!important;border-bottom:1px solid var(--tw-line);padding:14px var(--tw-gut)!important;line-height:1}
body.tw-site .tw-nav .elementor-nav-menu--dropdown a.elementor-item-active,body.tw-site .tw-nav .elementor-nav-menu--dropdown a:hover{color:var(--tw-rec)!important}

/* ---------- frames ---------- */
body.tw-site .tw-frame{position:relative;overflow:hidden;background:var(--tw-ink-2)}
body.tw-site .tw-frame::after{content:"";position:absolute;inset:12px;z-index:4;pointer-events:none;
  background:
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) left top/16px 1px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) left top/1px 16px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) right top/16px 1px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) right top/1px 16px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) left bottom/16px 1px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) left bottom/1px 16px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) right bottom/16px 1px no-repeat,
    linear-gradient(rgba(241,241,236,.6),rgba(241,241,236,.6)) right bottom/1px 16px no-repeat}
body.tw-site .tw-frame>.tw-cover,body.tw-site .tw-frame>.elementor-widget-tw-wave{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important}
body.tw-site .tw-frame>.tw-cover .elementor-widget-container,body.tw-site .tw-frame>.tw-cover a,body.tw-site .tw-frame>.tw-cover .elementor-wrapper,body.tw-site .tw-frame>.tw-cover .e-hosted-video{position:absolute;inset:0;width:100%;height:100%;padding:0!important;margin:0}
body.tw-site .tw-frame>.tw-cover .elementor-wrapper,body.tw-site .tw-frame>.tw-cover .e-hosted-video{aspect-ratio:auto!important}
body.tw-site .tw-frame>.tw-cover img,body.tw-site .tw-frame>.tw-cover video{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;object-fit:cover;display:block}
body.tw-site .tw-cap{position:absolute!important;z-index:3;left:18px;right:18px;bottom:20px;width:auto!important;color:var(--tw-paper);font-size:11px}
body.tw-site .tw-cap .elementor-heading-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.tw-cap-l b{display:block;font-weight:500}
.tw-cap-l span{color:#b4b3ac;font-size:12px}
body.tw-site .tw-badge{position:absolute!important;z-index:3;top:22px;right:22px;width:auto!important}
body.tw-site .tw-badge .elementor-heading-title,.tw-live-badge{display:inline-flex;align-items:center;gap:8px;background:var(--tw-rec);color:var(--tw-ink);padding:4px 10px}
body.tw-site .tw-badge .elementor-heading-title::before{content:"";width:.45em;height:.45em;border-radius:50%;background:var(--tw-ink)}
body.tw-site .tw-studio-bg{background:radial-gradient(70% 70% at 50% 50%, #1a2c4f, var(--tw-ink-2) 75%)}
.tw-wave,.tw-wave-c{position:absolute;inset:0;width:100%;height:100%;display:block}

/* ---------- hero ---------- */
body.tw-site .tw-hero{min-height:min(900px,96svh);display:flex!important;flex-direction:column!important;justify-content:flex-end!important;padding-top:150px!important;padding-bottom:110px!important;overflow:hidden;isolation:isolate}
body.tw-site .tw-hero::before,body.tw-site .tw-phero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(42vmax 36vmax at var(--mx,62%) var(--my,30%), rgba(36,64,122,.6), rgba(20,34,72,.3) 40%, transparent 70%)}
body.tw-site .tw-hero>.tw-wrap{gap:28px}
body.tw-site .tw-wordmark{width:100%!important}
body.tw-site .tw-wordmark img{width:min(100%,1180px);height:auto;animation:tw-reveal 1.4s var(--tw-ease) both}
body.tw-site .tw-wordmark::after{content:"";display:block;height:1px;margin-top:22px;background:var(--tw-navy);width:0;animation:tw-wipe 1.1s .9s var(--tw-ease) forwards}
@keyframes tw-reveal{from{clip-path:inset(0 100% 0 0);transform:translateY(.4em);opacity:.2}to{clip-path:inset(0 0 0 0);transform:none;opacity:1}}
@keyframes tw-wipe{to{width:clamp(80px,14vw,200px)}}
body.tw-site .e-con.tw-hero-row{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
body.tw-site .tw-hero-row>.elementor-widget{width:auto!important}
body.tw-site .tw-tagline{font-weight:600;font-size:clamp(24px,3.4vw,46px);letter-spacing:-.02em;line-height:1.05}
body.tw-site .tw-hero-meta{color:var(--tw-dim);text-align:right;line-height:1.9}
body.tw-site .tw-hero-meta b{color:var(--tw-paper);font-weight:500}

/* page heroes */
body.tw-site .tw-phero{padding-top:clamp(150px,17vw,220px)!important;padding-bottom:clamp(56px,7vw,100px)!important;overflow:hidden;isolation:isolate}
body.tw-site .tw-phero-title{font-size:clamp(54px,12.4vw,200px);animation:tw-rise .9s var(--tw-ease) both}
body.tw-site .e-con.tw-phero-row{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:end;margin-top:clamp(28px,4vw,56px)!important;border-top:1px solid var(--tw-line);padding-top:24px!important;animation:tw-fade .8s .25s ease both}
body.tw-site .tw-lead{font-size:clamp(20px,2.2vw,28px);line-height:1.35;max-width:38ch}
body.tw-site .tw-phero-meta{color:var(--tw-dim);text-align:right;line-height:1.9}
body.tw-site .tw-phero-meta b{color:var(--tw-paper);font-weight:500}
@keyframes tw-rise{from{transform:translateY(.25em);opacity:0}to{transform:none;opacity:1}}
@keyframes tw-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- manifesto ---------- */
body.tw-site .tw-manifesto{padding-top:clamp(90px,14vw,190px)!important;padding-bottom:clamp(90px,14vw,190px)!important}
body.tw-site .tw-mf{font-weight:800;font-variation-settings:"wdth" 112;font-size:clamp(38px,7.4vw,118px);line-height:.98;letter-spacing:-.025em;max-width:14ch;text-wrap:balance}
body.tw-site .tw-mf .l2{display:block;margin-top:.25em}
body.tw-site .tw-mf .w{color:#4a4945;transition:color .35s}
body.tw-site .tw-mf .w.lit{color:var(--tw-paper)}
body.tw-site .tw-mf .l2 .w.lit{color:#9b9a93}

/* ---------- marquee ---------- */
body.tw-site .tw-marquee-sec{border-top:1px solid var(--tw-line);border-bottom:1px solid var(--tw-line);background:var(--tw-ink-2);overflow:hidden}
.tw-marquee{overflow:hidden}
.tw-run{display:flex;width:max-content;animation:tw-run 38s linear infinite}
.tw-run span{font-family:var(--tw-f-display);font-weight:800;font-variation-settings:"wdth" 125;text-transform:uppercase;font-size:clamp(22px,3vw,40px);padding:18px 28px 18px 0;white-space:nowrap;display:flex;align-items:center;gap:28px;line-height:1}
.tw-run em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--tw-paper)}
@keyframes tw-run{to{transform:translateX(-50%)}}

/* ---------- who + method (home) ---------- */
body.tw-site .tw-who{padding-top:clamp(90px,11vw,150px)!important;padding-bottom:clamp(90px,11vw,150px)!important}
body.tw-site .tw-who-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:end}
body.tw-site .tw-who .tw-h2{max-width:none}
body.tw-site .tw-sub{color:var(--tw-dim-ink);font-size:clamp(20px,2.2vw,28px);line-height:1.3}
body.tw-site .tw-who-foot{border-top:1.5px solid var(--tw-ink);margin-top:clamp(56px,7vw,96px)!important;padding-top:16px;font-size:14px}
body.tw-site .tw-who-foot p{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
body.tw-site .tw-who-foot span:last-child{color:var(--tw-dim-ink)}
body.tw-site .tw-method{padding-bottom:clamp(90px,11vw,150px)!important}
body.tw-site .tw-method-h{margin-bottom:40px}
body.tw-site .tw-steps{border-top:1.5px solid var(--tw-ink);border-bottom:1.5px solid var(--tw-ink)}
body.tw-site .e-con.tw-step{display:grid!important;grid-template-columns:70px minmax(0,1fr) auto;gap:24px;align-items:center;padding-top:26px!important;padding-bottom:26px!important;border-top:1px solid var(--tw-line-ink)}
body.tw-site .tw-step:first-child{border-top:0}
body.tw-site .tw-step-n{color:var(--tw-navy);font-size:13px}
body.tw-site .tw-step-title{font-size:clamp(30px,5.6vw,78px);line-height:.95;transition:transform .5s var(--tw-ease)}
body.tw-site .tw-step-desc{color:var(--tw-dim-ink);margin-top:10px;max-width:52ch;line-height:1.4}
body.tw-site .tw-thumb{width:clamp(120px,17vw,250px)!important;transition:width .5s var(--tw-ease)}
body.tw-site .tw-thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(.85) contrast(1.05);transition:filter .6s}
body.tw-site .tw-step:hover .tw-step-title{transform:translateX(18px)}
body.tw-site .tw-step:hover .tw-thumb{width:clamp(140px,22vw,320px)!important}
body.tw-site .tw-step:hover .tw-thumb img{filter:none}
body.tw-site .tw-flow{color:var(--tw-dim-ink);margin-top:20px;font-size:14px}

/* ---------- takes (home monitor widget) ---------- */
body.tw-site .tw-takes-sec{padding-top:clamp(90px,11vw,150px)!important;padding-bottom:clamp(90px,11vw,150px)!important}
body.tw-site .e-con.tw-head-row{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:44px!important}
body.tw-site .tw-head-row>.elementor-widget,body.tw-site .tw-head-row>.e-con{width:auto!important}
body.tw-site .tw-head-l .tw-eyebrow{margin-bottom:24px}
body.tw-site .tw-head-p{max-width:40ch;color:var(--tw-dim);font-size:18px;line-height:1.4}
body.tw-site .tw-paper .tw-head-p{color:var(--tw-dim-ink)}
body.tw-site .tw-takes-title{font-size:clamp(40px,7vw,104px)}
.tw-studio{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(24px,4vw,56px)}
.tw-tabs{display:flex;flex-direction:column;border-top:1px solid var(--tw-line)}
body.tw-site .tw-tab{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;text-align:left;padding:20px 4px;border:0;border-bottom:1px solid var(--tw-line);border-radius:0;background:none;color:var(--tw-dim);transition:color .2s,padding .3s;cursor:pointer;font:inherit}
.tw-tab .tw-k{font-family:var(--tw-f-display);font-weight:800;font-variation-settings:"wdth" 125;text-transform:uppercase;font-size:clamp(22px,2.4vw,32px);line-height:1}
.tw-tab .tw-ind{width:8px;height:8px;border-radius:50%;border:1px solid currentColor}
body.tw-site .tw-tab[aria-selected="true"]{color:var(--tw-paper);padding-left:14px}
.tw-tab[aria-selected="true"] .tw-ind{background:var(--tw-rec);border-color:var(--tw-rec);animation:tw-blink 1.2s steps(1) infinite}
body.tw-site .tw-tab:hover,body.tw-site .tw-tab:focus{color:var(--tw-paper);background:none}
.tw-monitor{min-width:0;display:grid;gap:22px}
body.tw-site .tw-screen{aspect-ratio:1280/620;width:100%}
.tw-screen video,.tw-screen .tw-layer{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block}
.tw-screen .tw-layer{animation:tw-fade .5s ease both}
.tw-grade{position:absolute;inset:0;z-index:1;background:var(--tint,var(--tw-warm));mix-blend-mode:color;opacity:.45;transition:background .6s,opacity .4s}
.tw-screen.no-grade .tw-grade{opacity:0}
.tw-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(to bottom,rgba(11,11,10,.55),transparent 28%,transparent 62%,rgba(11,11,10,.7))}
.tw-slate{position:absolute;z-index:3;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--tw-paper)}
.tw-slate-grid{display:grid;grid-template-columns:repeat(3,auto);gap:4px 16px;color:#b4b3ac}
.tw-slate-grid b{color:var(--tw-paper);font-weight:500}
.tw-live-badge{display:none}
.tw-screen.is-live .tw-live-badge{display:inline-flex}
.tw-live-badge .tw-dot{background:var(--tw-ink)}
.tw-meters{position:absolute;z-index:3;right:24px;bottom:62px;display:flex;gap:4px;align-items:flex-end;height:70px}
.tw-meters i{width:5px;background:linear-gradient(to top,#d8d8d0 0 70%,#7cc3ef 70% 88%,#3d7fd6 88%);height:100%;transform-origin:bottom;animation:tw-lvl .9s ease-in-out infinite alternate;opacity:.85}
.tw-meters i:nth-child(2){animation-duration:.7s;animation-delay:-.3s}
.tw-meters i:nth-child(3){animation-duration:1.1s;animation-delay:-.6s}
.tw-meters i:nth-child(4){animation-duration:.8s;animation-delay:-.2s}
@keyframes tw-lvl{from{transform:scaleY(.25)}to{transform:scaleY(.85)}}
.tw-screen .tw-cap{position:absolute;z-index:3;left:18px;right:18px;bottom:20px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;font-size:11px;color:var(--tw-paper)}
.tw-take-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 40px;align-items:start}
.tw-take-copy h3{font-weight:600;font-size:clamp(26px,3vw,40px);letter-spacing:-.02em;line-height:1.05;margin:0;color:inherit}
.tw-take-copy ul,.tw-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--tw-line)}
.tw-take-copy li,.tw-list li{padding:11px 0;border-bottom:1px solid var(--tw-line);display:flex;justify-content:space-between;gap:12px;font-family:var(--tw-f-it);font-size:17px}
.tw-take-copy li .tw-mono,.tw-list .tw-num{color:var(--tw-dim)}
body.tw-site .tw-paper .tw-list,body.tw-site .tw-paper .tw-list li{border-color:var(--tw-line-ink)}
body.tw-site .tw-paper .tw-list .tw-num{color:var(--tw-dim-ink)}
.tw-fadein{animation:tw-fade .5s ease both}
/* animated fallback when autoplay is blocked */
.tw-vfall{display:none;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;z-index:0}
.tw-vbox.use-fall video{visibility:hidden}
.tw-vbox.use-fall .tw-vfall{display:block}
.tw-screen.mode-other .tw-vfall{display:none!important}

/* ---------- next take + brief ---------- */
body.tw-site .tw-next{padding-top:clamp(110px,13vw,180px)!important;padding-bottom:160px!important;background:radial-gradient(70vmax 50vmax at 85% 10%, rgba(36,64,122,.5), transparent 60%), var(--tw-ink)}
body.tw-site .tw-next-title{font-size:clamp(44px,9.6vw,150px);max-width:11ch}
.tw-brief{margin-top:clamp(48px,6vw,80px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);border-top:1px solid var(--tw-line);padding-top:36px}
.tw-cbrief .tw-brief{margin-top:0}
.tw-brief-form{display:grid;gap:26px}
body.tw-site .tw-brief fieldset{border:0;margin:0;padding:0;display:grid;gap:12px;min-width:0}
body.tw-site .tw-brief legend,body.tw-site .tw-brief .tw-flabel{color:var(--tw-dim);margin-bottom:12px;padding:0;display:block}
.tw-opts{display:flex;flex-wrap:wrap;gap:8px}
.tw-opt{position:relative}
.tw-opt input{position:absolute;opacity:0;pointer-events:none}
.tw-opt span{display:inline-block;border:1px solid var(--tw-line);padding:10px 16px;border-radius:999px;font-size:15px;transition:all .2s;cursor:pointer}
.tw-opt input:checked+span{background:var(--tw-paper);color:var(--tw-ink);border-color:var(--tw-paper)}
.tw-opt input:focus-visible+span{outline:2px solid var(--tw-rec);outline-offset:2px}
body.tw-site .tw-brief input[type=text],body.tw-site .tw-brief textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--tw-line);border-radius:0;color:var(--tw-paper);font-size:19px;padding:10px 0;resize:vertical;box-shadow:none}
body.tw-site .tw-brief input[type=text]:focus,body.tw-site .tw-brief textarea:focus{outline:none;border-bottom-color:var(--tw-paper)}
body.tw-site .tw-brief ::placeholder{color:var(--tw-dim);font-family:var(--tw-f-it)}
body.tw-site .tw-cta{display:inline-flex;align-items:center;gap:14px;background:var(--tw-paper);color:var(--tw-ink);padding:18px 26px;border:0;border-radius:0;font-size:15px;letter-spacing:.02em;justify-self:start;transition:gap .25s,background .2s;cursor:pointer}
body.tw-site .tw-cta:hover,body.tw-site .tw-cta:focus{gap:22px;background:#fff;color:var(--tw-ink)}
.tw-brief-out{display:grid;gap:14px;align-content:start;min-width:0}
body.tw-site .tw-brief-out pre{margin:0;white-space:pre-wrap;font-size:15px;line-height:1.7;color:var(--tw-paper-2);background:var(--tw-ink-3);border:1px solid var(--tw-line);border-radius:0;padding:22px;min-height:220px;overflow:auto}
.tw-brief-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.tw-brief-msg{font-size:14px}

/* ---------- next scene link ---------- */
body.tw-site .tw-nextscene{display:block!important;text-decoration:none;border-top:1px solid var(--tw-line);padding-top:clamp(60px,8vw,110px)!important;padding-bottom:clamp(100px,10vw,140px)!important}
body.tw-site .e-con.tw-ns-wrap{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
body.tw-site .tw-ns-wrap>.e-con,body.tw-site .tw-ns-wrap>.elementor-widget{width:auto!important}
body.tw-site .tw-ns-l{gap:14px}
body.tw-site .tw-ns-label{color:var(--tw-dim)}
body.tw-site .tw-ns-title{font-size:clamp(44px,8vw,130px);transition:transform .5s var(--tw-ease)}
body.tw-site .tw-ns-arr{font-family:var(--tw-f-display);font-weight:300;font-size:clamp(44px,7vw,110px);line-height:.9;transition:transform .5s var(--tw-ease),color .3s}
body.tw-site .tw-nextscene:hover .tw-ns-title,body.tw-site .tw-nextscene:hover .tw-ns-arr{transform:translateX(18px)}
body.tw-site .tw-nextscene:hover .tw-ns-arr{color:var(--tw-rec)}

/* ---------- chi siamo ---------- */
body.tw-site .tw-band-sec{padding-bottom:clamp(60px,8vw,110px)!important}
body.tw-site .tw-band{aspect-ratio:21/9;width:100%}
body.tw-site .tw-band img,body.tw-site .tw-svc-media img,body.tw-site .tw-mframe img{filter:grayscale(.2) contrast(1.04)}
body.tw-site .tw-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
body.tw-site .tw-rule{border-top:1.5px solid var(--tw-ink)}
body.tw-site .tw-belief,body.tw-site .tw-nstep{padding-top:22px!important;gap:14px}
body.tw-site .tw-belief-h{font-weight:700;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.02em;line-height:1.05}
body.tw-site .tw-belief-p,body.tw-site .tw-nstep-p{color:var(--tw-dim-ink);font-size:18px;line-height:1.45}
body.tw-site .tw-crew{border-top:1px solid var(--tw-line)}
body.tw-site .e-con.tw-crew-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,.7fr);gap:24px;padding-top:20px!important;padding-bottom:20px!important;border-bottom:1px solid var(--tw-line);align-items:baseline;transition:background .25s,padding .3s}
body.tw-site .tw-crew-row:not(.tw-crew-head):hover{background:var(--tw-ink-2);padding-left:12px!important;padding-right:12px!important}
body.tw-site .e-con.tw-crew-head{padding-top:12px!important;padding-bottom:12px!important;color:var(--tw-dim)}
body.tw-site .tw-crew-dept{font-size:clamp(20px,2vw,26px);line-height:1.2}
body.tw-site .tw-crew-what{color:#c9c8c1;font-size:17px;line-height:1.35}
body.tw-site .tw-crew-when{color:var(--tw-dim);font-size:14px}
body.tw-site .tw-group{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:end}
body.tw-site .tw-group-p{color:var(--tw-dim-ink);font-size:clamp(18px,1.8vw,22px);line-height:1.45}

/* ---------- servizi ---------- */
body.tw-site .tw-svc{padding-top:clamp(80px,10vw,140px)!important;padding-bottom:clamp(80px,10vw,140px)!important}
body.tw-site .tw-svc-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
body.tw-site .tw-flip .tw-svc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
body.tw-site .tw-svc-media{position:sticky!important;top:calc(100px + env(safe-area-inset-top,0px));aspect-ratio:16/9;width:100%}
body.tw-site .tw-svc-copy{gap:22px}
body.tw-site .tw-svc-copy .tw-eyebrow{margin-bottom:0}
body.tw-site .tw-svc-title{font-size:clamp(56px,8.6vw,136px)}
body.tw-site .tw-svc-tag{font-weight:600;font-size:clamp(24px,2.6vw,36px);letter-spacing:-.02em;line-height:1.05}
body.tw-site .tw-svc-desc{font-size:clamp(18px,1.7vw,21px);line-height:1.45;color:#c9c8c1;max-width:44ch}
body.tw-site .tw-paper .tw-svc-desc{color:var(--tw-dim-ink)}
body.tw-site .tw-svc-cols{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;margin-top:8px!important}
.tw-fmts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px!important}
.tw-fmt{border:1px solid var(--tw-line);padding:6px 10px;font-size:14px}
body.tw-site .tw-paper .tw-fmt{border-color:var(--tw-line-ink)}
body.tw-site .tw-ideal{font-size:17px;line-height:1.45}

/* ---------- metodo ---------- */
body.tw-site .tw-mwrap{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(28px,5vw,88px)}
body.tw-site .tw-mside{position:sticky!important;top:calc(110px + env(safe-area-inset-top,0px));align-self:start}
.tw-mside-w{display:grid;gap:16px}
.tw-mside-w .tw-mono{color:var(--tw-dim-ink)}
.tw-big{font-family:var(--tw-f-display);font-weight:800;font-variation-settings:"wdth" 125;font-size:clamp(90px,10vw,170px);line-height:.82;font-variant-numeric:tabular-nums;color:var(--tw-navy)}
.tw-mname{font-family:var(--tw-f-display);font-weight:800;font-variation-settings:"wdth" 125;text-transform:uppercase;font-size:clamp(24px,2.4vw,34px);line-height:1}
.tw-mbar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.tw-mbar i{height:3px;background:var(--tw-line-ink);transition:background .4s}
.tw-mbar i.on{background:var(--tw-navy)}
body.tw-site .tw-mstep{padding-bottom:clamp(70px,9vw,120px)!important;gap:24px}
body.tw-site .tw-mstep:last-child{padding-bottom:0!important}
body.tw-site .e-con.tw-mhead{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:baseline;gap:18px;border-top:1.5px solid var(--tw-ink);padding-top:18px!important}
body.tw-site .tw-mhead>.elementor-widget{width:auto!important}
body.tw-site .tw-mhead-n{color:var(--tw-navy);font-size:13px}
body.tw-site .tw-mstep-title{font-size:clamp(40px,6vw,92px)}
body.tw-site .tw-mframe{aspect-ratio:16/9;width:100%}
body.tw-site .tw-mframe img{filter:grayscale(.85) contrast(1.05)!important;transition:filter .6s}
body.tw-site .tw-mstep.on .tw-mframe img{filter:none!important}
body.tw-site .tw-mdesc{font-size:clamp(18px,1.8vw,22px);line-height:1.45;color:var(--tw-dim-ink);max-width:48ch}
body.tw-site .tw-mcols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
body.tw-site [id^="mt-"],body.tw-site [id^="sv-"],body.tw-site [id^="cs-"],body.tw-site [id^="ct-"]{scroll-margin-top:96px}

/* ---------- contatti ---------- */
body.tw-site .tw-contact-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tw-line);margin-top:clamp(48px,6vw,80px)!important}
body.tw-site .tw-ccard{padding:26px 20px 28px 0!important;border-bottom:1px solid var(--tw-line);gap:12px;align-content:start}
body.tw-site .tw-cval{font-size:clamp(18px,1.7vw,23px);line-height:1.3;overflow-wrap:anywhere}
body.tw-site .tw-cbrief{padding-top:clamp(80px,10vw,130px)!important;padding-bottom:clamp(80px,10vw,130px)!important;background:radial-gradient(70vmax 50vmax at 85% 10%, rgba(36,64,122,.45), transparent 60%), var(--tw-ink)}
body.tw-site .tw-nstep-n{color:var(--tw-navy);font-size:13px}
body.tw-site .tw-nstep-h{font-size:clamp(22px,2.2vw,30px);line-height:1.1}

/* ---------- footer (Theme Builder template) ---------- */
body.tw-site .tw-foot{border-top:1px solid var(--tw-line);padding-top:48px!important;padding-bottom:120px!important}
body.tw-site .tw-foot-grid{grid-template-columns:repeat(4,minmax(0,1fr)) 140px;gap:28px;align-items:end}
body.tw-site .tw-fcol{gap:8px}
body.tw-site .tw-fval{font-size:18px;line-height:1.35}
body.tw-site .tw-fval a{text-decoration:none}
body.tw-site .tw-qr{aspect-ratio:1;background:var(--tw-paper);color:var(--tw-ink)}
body.tw-site .tw-qr .elementor-heading-title{height:100%;display:grid;place-items:center;text-align:center;font-size:11px;aspect-ratio:1}
body.tw-site .e-con.tw-foot-end{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:56px!important}
body.tw-site .tw-foot-end>.elementor-widget{width:auto!important}
body.tw-site .tw-foot-logo img{height:clamp(34px,4.6vw,58px);width:auto;max-width:none}

/* ---------- editor: keep things visible and still ---------- */
body.tw-editing .e-con.tw-header{position:relative!important;mix-blend-mode:normal;background:var(--tw-ink)}
body.tw-editing .tw-mf .w{color:var(--tw-paper)}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  body.tw-site .e-con.tw-header{grid-template-columns:1fr auto;mix-blend-mode:normal;background:linear-gradient(to bottom,rgba(11,11,10,.92),rgba(11,11,10,0))}
  body.tw-site .tw-header .elementor-widget-tw-hud{display:none}
  .tw-chapters a:not(.on){display:none}
  .tw-studio,.tw-take-copy,.tw-brief{grid-template-columns:minmax(0,1fr)}
  .tw-tabs{flex-direction:row;overflow-x:auto;border-top:0;gap:6px}
  body.tw-site .tw-tab{border:1px solid var(--tw-line);padding:12px 14px;grid-template-columns:auto auto;white-space:nowrap}
  .tw-tab .tw-tk{display:none}
  body.tw-site .tw-tab[aria-selected="true"]{padding-left:14px;border-color:var(--tw-paper)}
  body.tw-site .tw-who-grid,body.tw-site .e-con.tw-phero-row,body.tw-site .tw-grid-3,body.tw-site .tw-svc-grid,body.tw-site .tw-flip .tw-svc-grid,body.tw-site .tw-mwrap,body.tw-site .tw-group{grid-template-columns:minmax(0,1fr)}
  body.tw-site .tw-phero-meta{text-align:left}
  body.tw-site .tw-flip .tw-svc-media{order:-1}
  body.tw-site .tw-svc-media{position:relative!important;top:auto}
  body.tw-site .tw-mside{display:none!important}
  body.tw-site .tw-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tw-site .e-con.tw-crew-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}
  body.tw-site .tw-crew-when{grid-column:2}
  body.tw-site .tw-crew-head{display:none!important}
  body.tw-site .tw-foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  body.tw-site{font-size:16px}
  body.admin-bar.tw-site .e-con.tw-header{top:46px}
  body.tw-site .e-con.tw-header{padding-left:max(28px,calc(env(safe-area-inset-left,0px) + 20px))!important;padding-right:max(28px,calc(env(safe-area-inset-right,0px) + 20px))!important}
  .tw-rec .tw-rec-l{display:none}
  body.tw-site .e-con.tw-step{grid-template-columns:40px minmax(0,1fr)}
  body.tw-site .tw-thumb,body.tw-site .tw-step:hover .tw-thumb{grid-column:2;width:100%!important}
  body.tw-site .tw-thumb img{aspect-ratio:16/9}
  body.tw-site .tw-hero-meta{text-align:left}
  .tw-slate-grid,.tw-meters{display:none}
  body.tw-site .tw-contact-grid,body.tw-site .tw-mcols,body.tw-site .tw-svc-cols,body.tw-site .e-con.tw-crew-row{grid-template-columns:minmax(0,1fr)}
  body.tw-site .tw-crew-when{grid-column:auto}
  body.tw-site .tw-band{aspect-ratio:4/3}
  body.tw-site .tw-ccard{padding-right:0!important}
}
@media (prefers-reduced-motion:reduce){
  .tw-grain,.tw-run,.tw-meters i,.tw-rec .tw-dot{animation:none!important}
  body.tw-site .tw-wordmark img,body.tw-site .tw-phero-title,body.tw-site .e-con.tw-phero-row{animation:none!important}
  body.tw-site .tw-wordmark::after{animation:none!important;width:clamp(80px,14vw,200px)}
  html{scroll-behavior:auto}
}
