/*
Theme Name: Terra Capital Off-Market
Theme URI: https://terracapitaleg.com
Author: Terra Capital
Description: Off-market land and hotel opportunities in Egypt, in four languages (Arabic, English, German, Russian). Built on the Terra Capital Skyline design and the same data model (settings, texts, FAQ, articles), with an Opportunities section for anonymous large-scale asset profiles.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: terra-capital-offmarket
*/

:root{
 --ink:#070605;--surf:#0F0D0B;--cu:#C98B62;--cu-l:#F0C39A;--cu-d:#8E5532;
 --tx:#F6EFE7;--mu:#A89888;--ln:rgba(201,139,98,.28);
 --disp:'Unbounded','Noto Kufi Arabic','Manrope',sans-serif;
 --body:'Manrope','Noto Sans Arabic',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--tx);font-family:var(--body);line-height:1.55}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
a{color:inherit}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--cu-l);outline-offset:3px}
html[lang=ar] *{letter-spacing:0!important}

/* ---------- header ---------- */
.tc-header{position:relative;z-index:60;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:18px clamp(20px,5vw,72px);transition:padding .3s ease}
.tc-brand{display:flex;align-items:center;gap:16px;font:800 28px/1.1 var(--disp);text-decoration:none;transition:font-size .3s}
.tc-brand img{width:76px;height:76px;object-fit:contain;transition:width .3s,height .3s}
.tc-hd{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.tc-navs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 22px}
.tc-nav{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 2px;text-decoration:none;font-weight:600;color:var(--tx)}
.tc-nav::after{content:"";position:absolute;inset-inline:2px;bottom:7px;height:1px;background:var(--cu);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
html[dir=rtl] .tc-nav::after{transform-origin:right}
.tc-nav:hover::after,.tc-nav.on::after{transform:scaleX(1)}
.tc-nav.on{color:var(--cu-l)}
.tc-langs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.tc-lang{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;text-decoration:none;color:var(--mu);border:1px solid var(--ln);transition:border-color .25s,color .25s}
.tc-lang:hover{color:var(--tx);border-color:var(--cu)}
.tc-lang.on{background:linear-gradient(120deg,#B9794F,#F0C39A 55%,#C98B62);color:#140C07;border-color:transparent}
.tc-lang svg{display:block;border-radius:2px}
@media (min-width:900px){
 .tc-header{position:sticky;top:0;background:linear-gradient(to bottom,rgba(7,6,5,.94),rgba(7,6,5,.7));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
 .admin-bar .tc-header{top:32px}
 .tc-scrolled .tc-header{padding-block:8px;border-bottom:1px solid var(--ln)}
 .tc-scrolled .tc-brand{font-size:20px}
 .tc-scrolled .tc-brand img{width:52px;height:52px}
}
@media (max-width:640px){.tc-hd{align-items:flex-start;width:100%}.tc-navs,.tc-langs{justify-content:flex-start}.tc-brand{font-size:22px}.tc-brand img{width:60px;height:60px}}

/* ---------- shared ---------- */
.tc-sec{position:relative;padding:clamp(64px,9vw,120px) clamp(20px,5vw,72px)}
.tc-alt{background:var(--surf)}
.tc-h2{margin:0;font:700 clamp(26px,3.8vw,50px)/1.12 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-lead{margin:20px 0 0;font-size:clamp(17px,1.6vw,20px);line-height:1.8;color:var(--mu);max-width:62ch}
.tc-muted{color:var(--mu)}
.tc-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;border-radius:999px;border:0;cursor:pointer;font:800 15px var(--body);text-decoration:none;color:#140C07;background:linear-gradient(120deg,#B9794F 0%,#F0C39A 45%,#C98B62 62%,#8E5532 100%);background-size:220% 100%;background-position:0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 10px 30px rgba(201,139,98,.18);transition:background-position .5s ease,transform .25s ease}
.tc-btn:hover{background-position:100% 0;transform:translateY(-2px)}
.tc-btn-o{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;border-radius:999px;border:1px solid var(--cu);color:var(--cu-l);font:800 15px var(--body);text-decoration:none;transition:background .3s,color .3s}
.tc-btn-o:hover{background:var(--cu);color:#140C07}
.tc-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.tc-skyline{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.tc-above{position:relative;z-index:1}
.tc-shine{background:linear-gradient(100deg,#F6EFE7 0%,#F6EFE7 34%,#F0C39A 48%,#C98B62 58%,#F6EFE7 72%,#F6EFE7 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 8s ease-in-out infinite}
@keyframes shine{0%,100%{background-position:100% 0}50%{background-position:0 0}}
.rise{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.rise.d1{animation-delay:.15s}.rise.d2{animation-delay:.3s}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

/* ---------- hero ---------- */
.tc-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);align-items:center;gap:40px;min-height:min(86vh,820px);padding:clamp(40px,7vw,96px) clamp(20px,5vw,72px) clamp(80px,9vw,130px)}
.tc-hero .tc-skyline{opacity:.9;-webkit-mask-image:linear-gradient(to right,transparent 6%,rgba(0,0,0,.18) 40%,#000 66%);mask-image:linear-gradient(to right,transparent 6%,rgba(0,0,0,.18) 40%,#000 66%)}
html[dir=rtl] .tc-hero .tc-skyline{transform:scaleX(-1)}
.tc-hero::after{content:"";position:absolute;inset-inline:0;inset-block-end:0;height:34%;background:linear-gradient(to top,var(--ink),transparent);z-index:0;pointer-events:none}
.tc-hero h1{margin:0;font:700 clamp(28px,4.5vw,60px)/1.12 var(--disp);overflow-wrap:break-word;hyphens:auto;max-width:18ch}
.tc-hero .tc-lead{max-width:56ch}
.tc-hero .tc-btn{margin-top:40px}
.tc-emblem{position:relative;width:min(100%,440px);aspect-ratio:1;justify-self:center}
.tc-emblem svg{position:absolute;inset:0;width:100%;height:100%;animation:spin 120s linear infinite}
.tc-emblem img{position:absolute;inset:19%;width:62%;height:62%;object-fit:contain;filter:drop-shadow(0 24px 40px rgba(0,0,0,.65))}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:820px){.tc-hero{grid-template-columns:1fr}.tc-emblem{width:min(70%,320px);justify-self:start}}

/* ---------- marquee ---------- */
.tc-marquee{overflow:hidden;direction:ltr;background:var(--surf);border-block:1px solid var(--ln)}
.tc-track{display:flex;width:max-content;animation:marq 60s linear infinite}
.tc-marquee:hover .tc-track{animation-play-state:paused}
[dir=rtl] .tc-track{animation-direction:reverse}
.tc-mi{display:flex;align-items:center;gap:30px;padding:22px 30px 22px 0;white-space:nowrap;font:700 clamp(15px,1.8vw,22px) var(--disp);color:var(--tx)}
.tc-mi svg{flex:none}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- services index ---------- */
.tc-svcs{margin-top:48px;border-top:1px solid var(--ln)}
.tc-svc{display:grid;grid-template-columns:clamp(56px,8vw,110px) minmax(0,1fr) minmax(0,300px);gap:24px 32px;align-items:center;padding:36px 0;border-bottom:1px solid var(--ln)}
.tc-svc .n{font:800 clamp(32px,5vw,64px)/1 var(--disp);color:transparent;-webkit-text-stroke:1px var(--cu)}
.tc-svc h3{margin:0 0 12px;font:700 clamp(19px,2.3vw,30px)/1.25 var(--disp);transition:color .3s;overflow-wrap:break-word;hyphens:auto}
.tc-svc p{margin:0;color:var(--mu);line-height:1.75;max-width:62ch}
.tc-svc .art{height:150px;border:1px solid var(--ln);border-radius:6px;overflow:hidden;background:var(--ink);opacity:.5;transition:opacity .4s,transform .4s}
.tc-svc .art svg{display:block}
.tc-svc:hover .art,.tc-svc:focus-within .art{opacity:1;transform:scale(1.03)}
.tc-svc:hover h3{color:var(--cu-l)}
@media (max-width:760px){.tc-svc{grid-template-columns:52px minmax(0,1fr)}.tc-svc .art{display:none}}
.tc-more{display:inline-flex;align-items:center;gap:10px;margin-top:32px;font-weight:800;color:var(--cu-l);text-decoration:none}

/* ---------- about ---------- */
.tc-about-top{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);align-items:start}
.tc-statement{margin:0;font:600 clamp(21px,2.6vw,34px)/1.45 var(--body);color:var(--tx)}
.tc-sub-h{margin:56px 0 0;font:700 clamp(20px,2.4vw,30px)/1.3 var(--disp);color:var(--cu-l)}
.tc-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;margin-top:72px;border-top:1px solid var(--ln)}
.tc-pillar{padding:32px 28px 32px 0;border-bottom:1px solid var(--ln)}
.tc-pillar .n{font:800 56px/1 var(--disp);color:transparent;-webkit-text-stroke:1px var(--cu)}
.tc-pillar h3{margin:18px 0 10px;font:700 20px/1.3 var(--disp)}
.tc-pillar p{margin:0;color:var(--mu);line-height:1.75}
.tc-mission{position:relative;overflow:hidden;padding:clamp(80px,11vw,150px) clamp(20px,5vw,72px);text-align:center;border-block:1px solid var(--ln)}
.tc-mission .tc-skyline{opacity:.6;-webkit-mask-image:radial-gradient(ellipse 62% 72% at 50% 50%,rgba(0,0,0,.1),#000 100%);mask-image:radial-gradient(ellipse 62% 72% at 50% 50%,rgba(0,0,0,.1),#000 100%)}
.tc-mission h2{margin:0 auto;max-width:22ch;font:700 clamp(24px,3.8vw,52px)/1.2 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-mission p{margin:24px auto 0;color:var(--mu);font-size:18px;max-width:50ch;line-height:1.7}
@media (max-width:820px){.tc-about-top{grid-template-columns:1fr}}

/* ---------- credentials ---------- */
.tc-cred-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:40px}
.tc-plaque{padding:26px 24px;border:1px solid transparent;border-radius:6px;background:linear-gradient(var(--surf),var(--surf)) padding-box,linear-gradient(135deg,#7A4326,#F0C39A 40%,#7A4326) border-box}
.tc-plaque .lbl{color:var(--mu);font-size:13px;letter-spacing:.04em}
.tc-plaque .val{margin-top:10px;font:700 18px/1.4 var(--body);color:var(--cu-l)}
.tc-plaque .num{font:700 28px/1.2 var(--disp)}
.tc-lic{display:flex;align-items:center;gap:12px;margin:36px 0 0;font-size:18px;font-weight:600;line-height:1.6}
.tc-lic svg{flex:none}

/* ---------- projects ---------- */
.tc-pgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,3.5vw,48px) clamp(20px,3vw,40px);margin-top:48px}
.tc-pcard{grid-column:span 6;display:block;text-decoration:none;position:relative}
@media (min-width:900px){.tc-pcard{grid-column:span 6}}
@media (max-width:640px){.tc-pcard{grid-column:1/-1}}
.tc-pimg{position:relative;aspect-ratio:3/2;background:var(--surf);overflow:hidden;border:1px solid var(--ln);transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease}
.tc-pimg>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.tc-pcard:hover .tc-pimg>img{transform:scale(1.06)}
.tc-pimg .ph{position:absolute;inset:0;margin:auto;width:90px;height:90px;object-fit:contain;opacity:.22}
.tc-pimg i{position:absolute;z-index:2;width:20px;height:20px;opacity:0;transition:opacity .3s}
.tc-pcard:hover .tc-pimg i{opacity:1}
.tc-pimg i:nth-of-type(1){inset-block-start:12px;inset-inline-start:12px;border-block-start:2px solid var(--cu-l);border-inline-start:2px solid var(--cu-l)}
.tc-pimg i:nth-of-type(2){inset-block-start:12px;inset-inline-end:12px;border-block-start:2px solid var(--cu-l);border-inline-end:2px solid var(--cu-l)}
.tc-pimg i:nth-of-type(3){inset-block-end:12px;inset-inline-start:12px;border-block-end:2px solid var(--cu-l);border-inline-start:2px solid var(--cu-l)}
.tc-pimg i:nth-of-type(4){inset-block-end:12px;inset-inline-end:12px;border-block-end:2px solid var(--cu-l);border-inline-end:2px solid var(--cu-l)}
.tc-pn{position:absolute;z-index:3;inset-block-start:16px;inset-inline-start:18px;font:700 12px var(--body);letter-spacing:.22em;color:var(--cu-l);text-shadow:0 1px 8px rgba(0,0,0,.7)}
.tc-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:linear-gradient(120deg,#B9794F,#F0C39A 55%,#C98B62);color:#140C07;font-size:12px;font-weight:800}
.tc-pimg .tc-badge{position:absolute;z-index:3;inset-block-end:16px;inset-inline-end:16px}
.tc-pmeta{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-top:18px}
.tc-pmeta h3{margin:0;font:700 clamp(17px,1.9vw,24px)/1.25 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-pmeta .sub{margin-top:8px;color:var(--mu)}
.tc-cat{margin:4px 0 0;font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--cu)}
.tc-pmeta .price{margin-top:6px;font-weight:800;color:var(--cu-l)}
.tc-arr{flex:none;width:48px;height:48px;border:1px solid var(--ln);border-radius:50%;display:grid;place-items:center;color:var(--cu-l);transition:background .3s,color .3s}
html[dir=rtl] .tc-arr svg,html[dir=rtl] .tc-cta-c svg{transform:scaleX(-1)}
.tc-pcard:hover .tc-arr{background:var(--cu);color:#140C07}

/* ---------- single project ---------- */
.tc-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:32px;color:var(--cu-l);font-weight:700;text-decoration:none}
.tc-single{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.tc-single-main{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--ln);transition:opacity .25s ease}
.tc-single-main.fade{opacity:.25}
.tc-single-ph{display:flex;align-items:center;justify-content:center;aspect-ratio:3/2;background:var(--ink);border:1px solid var(--ln)}
.tc-single-ph img{width:120px;opacity:.22}
.tc-strip{display:flex;gap:12px;margin-top:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.tc-strip a{flex:0 0 min(46%,260px);scroll-snap-align:start}
.tc-strip a{cursor:pointer}
.tc-strip img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--ln);opacity:.65;transition:opacity .2s,border-color .2s}
.tc-strip a:hover img,.tc-strip a.on img{opacity:1}
.tc-strip a.on img{border-color:var(--cu)}
.tc-single-info{position:sticky;top:110px}
.tc-single-info h1{margin:16px 0 0;font:700 clamp(26px,3.4vw,42px)/1.15 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-single-info .price{margin-top:18px;font:700 22px var(--body);color:var(--cu-l)}
.tc-desc{margin-top:20px;line-height:1.85;color:var(--mu)}
.tc-desc p{margin:0 0 14px}
@media (max-width:900px){.tc-single{grid-template-columns:1fr}.tc-single-info{position:static}}

/* ---------- contact ---------- */
.tc-contact{position:relative;overflow:hidden;border-top:1px solid var(--ln)}
.tc-contact .tc-skyline{opacity:.35;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 40%,#000 70%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 40%,#000 70%,transparent)}
.tc-contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:48px;align-items:center}
.tc-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:36px;padding:clamp(22px,3.5vw,40px) 0;border-block:1px solid var(--ln);text-decoration:none}
.tc-cta-t{font:700 clamp(22px,4vw,54px)/1.1 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-cta-c{flex:none;width:clamp(56px,7vw,92px);aspect-ratio:1;border:1px solid var(--cu);border-radius:50%;display:grid;place-items:center;color:var(--cu-l);transition:background .35s,color .35s}
.tc-cta:hover .tc-cta-c{background:var(--cu);color:#140C07}
.tc-details{margin-top:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px 32px;line-height:1.7}
.tc-details b{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--cu)}
.tc-details a{text-decoration:none}
.tc-contact-emblem{position:relative;width:min(100%,360px);aspect-ratio:1;justify-self:center}
.tc-contact-emblem svg{position:absolute;inset:0;width:100%;height:100%;animation:spin 120s linear infinite}
.tc-contact-emblem img{position:absolute;inset:19%;width:62%;height:62%;object-fit:contain}
@media (max-width:820px){.tc-contact-grid{grid-template-columns:1fr}.tc-contact-emblem{justify-self:start;width:min(60%,260px)}}

/* ---------- footer ---------- */
.tc-foot{position:relative;overflow:hidden;padding:48px clamp(20px,5vw,72px) 28px;border-top:1px solid var(--ln);background:var(--ink)}
.tc-foot-nav{display:flex;flex-wrap:wrap;gap:8px 28px;margin-bottom:28px}
.tc-foot-nav a{color:var(--mu);text-decoration:none;font-weight:600}
.tc-foot-nav a:hover{color:var(--cu-l)}
.tc-foot-word{font:800 clamp(28px,9vw,160px)/1 'Cinzel','Noto Kufi Arabic',serif;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;user-select:none;padding:.1em 0 .08em}
.tc-foot-word span{display:inline-block;white-space:pre;color:transparent;background:linear-gradient(100deg,transparent 35%,rgba(246,239,231,.95) 50%,transparent 65%) 200% 0/250% 100% no-repeat,linear-gradient(180deg,rgba(240,195,154,.55),rgba(142,85,50,.12));-webkit-background-clip:text;background-clip:text;animation:wordshine 7s ease-in-out infinite;animation-delay:calc(var(--i,0)*.14s);transform:translateY(calc(var(--p,0)*-.12em));transition:transform .25s ease,opacity .8s ease calc(var(--i,0)*.06s),translate .9s cubic-bezier(.2,.7,.2,1) calc(var(--i,0)*.06s)}
html.js .tc-foot-word:not(.in) span{opacity:0;translate:0 70%}
@keyframes wordshine{0%{background-position:200% 0,0 0}60%,100%{background-position:-100% 0,0 0}}
.tc-copy{margin-top:20px;color:#8C8076;font-size:14px}

/* ---------- reveal ---------- */
html.js .tc-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
html.js .tc-reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 html.js .tc-reveal{opacity:1;transform:none}
 html.js .tc-foot-word span{opacity:1;translate:none}
}

/* ---------- FAQ ---------- */
.tc-faq-wrap{margin-top:clamp(56px,8vw,110px)}
.tc-faq{max-width:900px;margin-inline:auto}
.tc-faq .tc-h2{margin-bottom:28px}
.tc-faq details{border-top:1px solid var(--ln)}
.tc-faq details:last-child{border-bottom:1px solid var(--ln)}
.tc-faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;font:700 clamp(16px,1.6vw,19px)/1.45 var(--body)}
.tc-faq summary::-webkit-details-marker{display:none}
.tc-faq summary::after{content:"+";flex:0 0 auto;color:var(--cu-l);font-size:26px;line-height:1;transition:transform .25s}
.tc-faq details[open] summary::after{transform:rotate(45deg)}
.tc-faq summary:hover{color:var(--cu-l)}
.tc-faq .a{padding:0 0 22px;color:var(--mu);line-height:1.85}
.tc-faq .a p{margin:0 0 12px}
.tc-btn-o svg{flex:0 0 auto}

/* ---------- video in gallery ---------- */
.tc-stage{position:relative}
.tc-player{position:absolute;inset:0;width:100%;height:100%;border:1px solid var(--ln);background:#000}
.tc-stage.playing .tc-single-main,.tc-stage.playing .tc-single-ph{visibility:hidden}
.tc-strip a.tc-vid{position:relative;display:block}
.tc-vph{display:block;width:100%;aspect-ratio:3/2;background:linear-gradient(135deg,#1c1612,#0b0908);border:1px solid var(--ln)}
.tc-strip a.on .tc-vph{border-color:var(--cu)}
.tc-play{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(7,6,5,.72);border:1px solid var(--cu);pointer-events:none}
.tc-play::after{content:"";position:absolute;left:17px;top:12px;border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent var(--cu-l)}

/* ---------- inquiry modal ---------- */
html.tc-modal-open{overflow:hidden}
.tc-inq[hidden]{display:none}
.tc-inq{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(7,6,5,.84);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tc-inq-box{position:relative;width:100%;max-width:660px;max-height:92vh;overflow:auto;background:var(--surf);border:1px solid var(--ln);border-radius:18px;padding:clamp(22px,4vw,40px)}
.tc-inq-x{position:absolute;top:12px;inset-inline-end:14px;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:var(--cu-l);font:400 30px/1 var(--body);cursor:pointer}
.tc-inq-x:hover{background:rgba(201,139,98,.16)}
.tc-inq-h{margin:0 40px 8px 0;font:700 clamp(22px,3vw,30px)/1.2 var(--disp)}
[dir=rtl] .tc-inq-h{margin:0 0 8px 40px}
.tc-inq-intro{margin:0 0 14px}
.tc-inq-proj{margin:0 0 14px;color:var(--cu-l)}
.tc-inq-form label{display:block}
.tc-inq-form label>span{display:block;margin:0 0 6px;font:700 13px var(--body);color:var(--mu)}
.tc-inq-form input[type=text],.tc-inq-form input[type=email],.tc-inq-form input[type=tel],.tc-inq-form select,.tc-inq-form textarea{width:100%;padding:13px 14px;border:1px solid var(--ln);border-radius:10px;background:var(--ink);color:var(--tx);font:500 15px var(--body)}
.tc-inq-form textarea{resize:vertical;min-height:120px}
.tc-inq-form input:focus,.tc-inq-form select:focus,.tc-inq-form textarea:focus{outline:none;border-color:var(--cu-l)}
.tc-inq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.tc-inq-full{margin-bottom:14px}
.tc-inq-consent{display:flex!important;align-items:flex-start;gap:10px;margin:0 0 16px;font-size:13px;color:var(--mu)}
.tc-inq-consent input{flex:0 0 auto;margin-top:3px;accent-color:var(--cu)}
.tc-inq-consent span{margin:0!important;font-weight:500!important}
.tc-inq-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.tc-inq-msg{margin:0 0 14px;padding:12px 14px;border-radius:10px;font-weight:600}
.tc-inq-msg.ok{background:rgba(120,190,130,.14);border:1px solid rgba(120,190,130,.5);color:#BFE5C5}
.tc-inq-msg.err{background:rgba(220,110,90,.12);border:1px solid rgba(220,110,90,.5);color:#F2C0B6}
.tc-inq-form[hidden]{display:none}
@media (max-width:560px){.tc-inq-grid{grid-template-columns:1fr}}

.tc-player-err{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;text-align:center;color:#F2C0B6}
.tc-player-err p{margin:0;max-width:420px}
.tc-player-err a{color:var(--cu-l);font-size:28px;text-decoration:none}

/* ---------- privacy policy page ---------- */
.tc-legal{max-width:1064px;margin-inline:auto}
.tc-legal-date{margin:12px 0 36px;font-size:14px}
.tc-legal h2{margin:38px 0 12px;font:700 clamp(18px,2vw,24px)/1.3 var(--disp);color:var(--cu-l)}
.tc-legal p,.tc-legal li{color:var(--mu);line-height:1.85;overflow-wrap:anywhere}
.tc-legal p{margin:0 0 14px}
.tc-legal ul{margin:0 0 14px;padding-inline-start:22px}
.tc-legal li{margin-bottom:8px}
.tc-legal strong{color:var(--tx)}
.tc-legal a{color:var(--cu-l)}
.tc-inq-consent a{color:var(--cu-l)}

/* ---------- blog ---------- */
.tc-bgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3.5vw,48px) clamp(20px,2.5vw,36px);margin-top:48px}
@media (max-width:1000px){.tc-bgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tc-bgrid{grid-template-columns:1fr}}
.tc-bcard{display:block;position:relative;text-decoration:none}
.tc-bcard:hover .tc-pimg>img{transform:scale(1.06)}
.tc-bcard:hover .tc-pimg i{opacity:1}
.tc-bmeta{padding-top:18px}
.tc-bdate{display:block;font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--cu)}
.tc-bmeta h3{margin:10px 0 0;font:700 clamp(17px,1.7vw,22px)/1.3 var(--disp);overflow-wrap:break-word;hyphens:auto;transition:color .3s}
.tc-bcard:hover .tc-bmeta h3{color:var(--cu-l)}
.tc-bex{margin:12px 0 0;color:var(--mu);line-height:1.75;overflow-wrap:anywhere}
.tc-bmore{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-weight:800;color:var(--cu-l)}
html[dir=rtl] .tc-bmore svg{transform:scaleX(-1)}
.tc-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:56px}
.tc-pager a,.tc-pager span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--ln);border-radius:999px;font-weight:700;text-decoration:none;color:var(--tx);transition:border-color .25s,color .25s}
.tc-pager a:hover{border-color:var(--cu);color:var(--cu-l)}
.tc-pager .on{background:linear-gradient(120deg,#B9794F,#F0C39A 55%,#C98B62);color:#140C07;border-color:transparent}

/* ---------- single article ---------- */
.tc-article{max-width:860px;margin-inline:auto}
.tc-article-head h1{margin:12px 0 0;font:700 clamp(26px,3.8vw,46px)/1.18 var(--disp);overflow-wrap:break-word;hyphens:auto}
.tc-article-fig{margin:36px 0 0}
.tc-article-img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--ln)}
.tc-article-body{margin-top:40px;font-size:clamp(17px,1.5vw,19px);line-height:1.95;color:var(--mu);overflow-wrap:anywhere}
.tc-article-body::after{content:"";display:block;clear:both}
.tc-article-body>:first-child{margin-top:0}
.tc-article-body p{margin:0 0 20px}
.tc-article-body h2,.tc-article-body h3,.tc-article-body h4{margin:44px 0 14px;font-family:var(--disp);font-weight:700;line-height:1.3;color:var(--tx);overflow-wrap:break-word;hyphens:auto}
.tc-article-body h2{font-size:clamp(22px,2.6vw,30px)}
.tc-article-body h3{font-size:clamp(19px,2.1vw,24px)}
.tc-article-body h4{font-size:18px}
.tc-article-body a{color:var(--cu-l)}
.tc-article-body strong,.tc-article-body b{color:var(--tx)}
.tc-article-body ul,.tc-article-body ol{margin:0 0 20px;padding-inline-start:26px}
.tc-article-body li{margin-bottom:8px}
.tc-article-body blockquote{margin:28px 0;padding:6px 22px;border-inline-start:3px solid var(--cu);color:var(--tx);font-weight:600}
.tc-article-body blockquote p:last-child{margin-bottom:0}
.tc-article-body img{max-width:100%;height:auto;border:1px solid var(--ln)}
.tc-article-body figure{max-width:100%;margin:28px 0}
.tc-article-body figcaption,.tc-article-body .wp-caption-text{margin-top:8px;font-size:14px;line-height:1.6;color:var(--mu)}
.tc-article-body .wp-caption{max-width:100%}
.tc-article-body .aligncenter{display:block;margin-inline:auto}
.tc-article-body .alignleft{float:left;margin:6px 24px 16px 0}
.tc-article-body .alignright{float:right;margin:6px 0 16px 24px}
@media (max-width:640px){.tc-article-body .alignleft,.tc-article-body .alignright{float:none;display:block;margin:20px auto}}
.tc-article-body iframe,.tc-article-body video{max-width:100%}
.tc-article-body iframe{width:100%;aspect-ratio:16/9;height:auto;border:0}
.tc-article-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:0 0 24px}
.tc-article-body th,.tc-article-body td{padding:10px 12px;border:1px solid var(--ln);text-align:start}
.tc-article-body hr{margin:36px 0;border:0;border-top:1px solid var(--ln)}
.tc-article-cta{max-width:860px;margin:56px auto 0;padding-top:32px;border-top:1px solid var(--ln)}

/* ---------- main website band ---------- */
.tc-mainband{text-align:center}
.tc-mainband .tc-lead{margin:12px auto 26px;max-width:60ch}
