
/* Ubbi Soft portfolio editorial refinement — responsive, scoped to portfolio and Tech Revive. */
:root{--tr-accent:#ff783b;--tr-accent-light:#ffc3a5;--tr-black:#0b0d10;--tr-sand:#f0ebe3;--tr-muted:#aeb5bf}
.work-archive .editorial-masthead{position:relative;overflow:hidden;padding-bottom:88px;background:radial-gradient(ellipse at 86% 72%,rgba(255,120,59,.13),transparent 48%),linear-gradient(135deg,#11151c,#090b0e)!important}
.work-archive .editorial-masthead:after{content:"WORK / 003";position:absolute;right:max(28px,calc((100vw - 1320px)/2));top:145px;color:rgba(255,255,255,.16);font-weight:800;letter-spacing:.24em;font-size:.7rem;pointer-events:none}
.work-archive .editorial-masthead h1 em{color:#f5b191;font-family:"Instrument Serif",serif;font-weight:400;letter-spacing:-.03em}
.work-archive .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.work-archive .archive-card{position:relative;min-height:460px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:#141920;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s}
.work-archive .archive-card:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.34)}
.work-archive .archive-card .archive-thumb{height:270px}
.work-archive .archive-card .archive-card-copy{padding:32px 34px 38px}
.work-archive .archive-card h2{margin:18px 0;font-size:clamp(1.65rem,2.6vw,2.7rem)}
.work-archive .archive-card p{line-height:1.7;max-width:570px}
.work-archive .archive-card .text-link{display:inline-flex;align-items:center;color:#f0f2f5}
.work-archive .archive-card:first-child{grid-column:span 2;display:grid;grid-template-columns:1fr 1.08fr;min-height:430px;background:var(--tr-sand);border:0;color:#11151c}
.work-archive .archive-card:first-child .archive-card-copy{grid-column:1;grid-row:1;justify-content:center;padding:clamp(32px,5vw,72px)}
.work-archive .archive-card:first-child .archive-thumb{grid-column:2;grid-row:1;height:100%;min-height:430px;position:relative;background:radial-gradient(circle at 64% 30%,#a83d25 0,#562a25 25%,#131821 68%);border-radius:0;display:grid;place-items:center;isolation:isolate}
.work-archive .archive-card:first-child .archive-thumb:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.075) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 94%);z-index:-1}
.work-archive .archive-card:first-child .archive-thumb:after{content:"BRISTOL / BUILT FOR THE REAL WORLD";position:absolute;left:30px;bottom:28px;color:rgba(255,255,255,.65);font-size:.6rem;letter-spacing:.18em;font-weight:800}
.work-archive .archive-card:first-child .archive-thumb img{object-fit:contain!important;width:min(67%,390px)!important;height:auto!important;padding:38px!important;max-height:240px;filter:drop-shadow(0 16px 30px rgba(0,0,0,.35));border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 34px 100px rgba(0,0,0,.3);transform:rotate(-3deg);transition:transform .4s cubic-bezier(.22,1,.36,1)}
.work-archive .archive-card:first-child:hover .archive-thumb img{transform:rotate(0deg) translateY(-6px)}
.work-archive .archive-card:first-child .project-tag{color:#9d481f}
.work-archive .archive-card:first-child h2{font-size:clamp(2.3rem,3.7vw,4.35rem);line-height:1.01;letter-spacing:-.055em;margin:25px 0}
.work-archive .archive-card:first-child p{color:#53585d;font-size:1.04rem}
.work-archive .archive-card:first-child .text-link{color:#282019}
.work-archive .archive-card:first-child .text-link span{color:#bd4d1b}
.work-archive .archive-card:first-child .archive-thumb:focus-visible,.work-archive .archive-card a:focus-visible{outline:3px solid var(--tr-accent);outline-offset:4px}

/* Tech Revive case study: editorial identity within existing premium studio shell. */
.page-main-tech-revive{--tr-canvas:#0c0f13;--tr-darktext:#1b2026;background:var(--tr-canvas)}
.page-main-tech-revive .page-content-shell{padding-bottom:0}
.page-main-tech-revive .page-content-shell>.container{max-width:none;padding:0}
.page-main-tech-revive .entry-content{width:100%;max-width:none}
.page-main-tech-revive .entry-content>.hero{position:relative;min-height:700px;padding:175px 0 112px!important;margin:0!important;overflow:hidden;background:radial-gradient(ellipse at 86% 55%,rgba(219,85,45,.20),transparent 43%),radial-gradient(ellipse at 25% 5%,rgba(87,103,156,.14),transparent 55%),#101317!important;border-bottom:1px solid rgba(255,255,255,.15);isolation:isolate}
.page-main-tech-revive .entry-content>.hero:before{content:"";position:absolute;right:-100px;top:30px;width:650px;height:650px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 95px rgba(255,255,255,.015),0 0 0 185px rgba(255,255,255,.012);z-index:-1;pointer-events:none}
.page-main-tech-revive .entry-content>.hero:after{content:"STUDIO / CLIENT STORY 01";position:absolute;bottom:30px;left:max(28px,calc((100vw - 1264px)/2));letter-spacing:.2em;font-size:.62rem;color:#858f9a;font-weight:800}
.page-main-tech-revive .entry-content>.hero>.container{max-width:1320px;padding:0 28px;position:relative;z-index:1}
.page-main-tech-revive .entry-content>.hero .hero-split{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(310px,.78fr);align-items:center;gap:clamp(36px,5vw,100px)}
.page-main-tech-revive .entry-content .hero h1{font-size:clamp(3.15rem,5.7vw,6.8rem);max-width:920px;line-height:.95;letter-spacing:-.07em}
.page-main-tech-revive .entry-content .hero .eyebrow{color:var(--tr-accent-light)}
.page-main-tech-revive .entry-content .eyebrow:before{background:var(--tr-accent)}
.page-main-tech-revive .entry-content .hero p{font-size:1.1rem;line-height:1.78;color:#c1c5ca}
.page-main-tech-revive .entry-content .hero p small{font-size:.69rem;letter-spacing:.05em;text-transform:uppercase;color:#8c98a5}
.page-main-tech-revive .entry-content .button:not(.alt){background:var(--tr-accent);border:1px solid var(--tr-accent);color:#15100d}
.page-main-tech-revive .entry-content .button:not(.alt):hover{background:#ffa474;border-color:#ffa474;transform:translateY(-2px)}
.page-main-tech-revive .entry-content .hero .premium-visual{min-height:420px!important;padding:clamp(26px,3.6vw,56px)!important;background:radial-gradient(circle at 72% 24%,rgba(255,113,62,.26),transparent 38%),linear-gradient(140deg,#20252d,#15191f)!important;border-color:rgba(255,179,138,.18)!important;box-shadow:0 35px 90px rgba(0,0,0,.25)}
.page-main-tech-revive .entry-content .hero .premium-visual:before{inset:15px;border-radius:18px;background-size:32px 32px;opacity:.47;pointer-events:none}
.page-main-tech-revive .entry-content .hero .premium-visual:after{content:"RETAIL / REPAIR / BRISTOL";left:28px;bottom:22px;color:#f0ae83;font-size:.61rem}
.page-main-tech-revive .entry-content .hero .premium-visual img{position:relative;z-index:1;display:block;max-width:93%;width:285px;background:#f8f7f4;border-radius:12px;padding:15px;margin:5px 0 20px;box-shadow:0 18px 45px rgba(0,0,0,.3)}
.page-main-tech-revive .entry-content .hero .premium-visual h2{position:relative;z-index:1;margin:10px 0 10px!important;font-size:clamp(2.4rem,3.2vw,4rem)!important;color:#fff}
.page-main-tech-revive .entry-content .hero .premium-visual p,.page-main-tech-revive .entry-content .hero .premium-visual a{position:relative;z-index:1}
.page-main-tech-revive .entry-content>.section{padding:105px 0!important;border-bottom:1px solid rgba(255,255,255,.08);margin:0!important}
.page-main-tech-revive .entry-content>.section>.container{max-width:1320px;padding:0 28px}
.page-main-tech-revive .entry-content>.section:nth-of-type(even){background:var(--tr-sand);color:var(--tr-darktext)}
.page-main-tech-revive .entry-content>.section:nth-of-type(even) .eyebrow{color:#a1532e}
.page-main-tech-revive .entry-content>.section:nth-of-type(even) p,.page-main-tech-revive .entry-content>.section:nth-of-type(even) li{color:#434a51}
.page-main-tech-revive .entry-content>.section:nth-of-type(even) a:not(.button){color:#a84315;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.page-main-tech-revive .entry-content>.section:nth-of-type(even) .glass.card{background:#fff;border-color:#d9d2c6;box-shadow:0 10px 35px rgba(0,0,0,.045);color:#15191e}
.page-main-tech-revive .entry-content>.section:nth-of-type(even) .glass.card p,.page-main-tech-revive .entry-content>.section:nth-of-type(even) .glass.card li{color:#4b5159}
.page-main-tech-revive .entry-content>.section .section-title{max-width:980px;font-size:clamp(2.65rem,4.7vw,5.3rem);letter-spacing:-.055em;margin:12px 0 34px}
.page-main-tech-revive .entry-content>.section .eyebrow{letter-spacing:.19em;font-size:.64rem}
.page-main-tech-revive .entry-content>.section p{font-size:1.035rem;line-height:1.88;max-width:920px}
.page-main-tech-revive .entry-content>.section .grid.grid-2{gap:18px}
.page-main-tech-revive .entry-content>.section .glass.card{padding:clamp(25px,3vw,42px);border-radius:22px;transition:transform .35s,border-color .35s;background:#141922}
.page-main-tech-revive .entry-content>.section .glass.card:hover{transform:translateY(-3px);border-color:rgba(255,120,59,.45)}
.page-main-tech-revive .entry-content>.section .glass.card h3{font-size:clamp(1.3rem,1.9vw,1.9rem);line-height:1.13;margin:0 0 20px;letter-spacing:-.03em}
.page-main-tech-revive .entry-content>.section .glass.card ul{padding-left:19px}
.page-main-tech-revive .entry-content>.section .glass.card li{margin-bottom:14px}
.page-main-tech-revive .entry-content details{border-bottom:1px solid rgba(120,124,134,.2);padding:16px 0}
.page-main-tech-revive .entry-content details:last-child{border-bottom:0}
.page-main-tech-revive .entry-content summary{cursor:pointer;list-style-position:outside;font-size:1rem;color:inherit}
.page-main-tech-revive .entry-content summary:hover{color:var(--tr-accent)}
.page-main-tech-revive .entry-content details p{margin-bottom:0}
.page-main-tech-revive .inner-cta{background:#11141b;border-top:1px solid rgba(255,120,59,.18)}
.page-main-tech-revive .inner-cta .btn-primary{background:var(--tr-accent)!important;color:#15100d!important}
.page-main-tech-revive .entry-content .hero-actions a:focus-visible,.page-main-tech-revive .entry-content a:focus-visible{outline:3px solid var(--tr-accent);outline-offset:4px;border-radius:4px}
.ventures-section .venture-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.ventures-section .venture-techrevive{background:linear-gradient(160deg,#1b1d23,#291b17);border-color:rgba(255,120,59,.28)}
.ventures-section .venture-techrevive .venture-mark{background:#ff783b;color:#121110;border-color:#ff783b}
.ventures-section .venture-techrevive:hover{border-color:rgba(255,120,59,.65)}
/* Related Tech Revive editorial article */
body.postid-9694 .article-hero{position:relative;overflow:hidden;padding:165px 0 88px;background:radial-gradient(ellipse at 74% 45%,rgba(255,120,59,.18),transparent 55%),#111319;border-bottom:1px solid rgba(255,255,255,.15)}
body.postid-9694 .article-hero:after{content:"BRISTOL / BRAND STORY";position:absolute;right:max(28px,calc((100vw - 1300px)/2));bottom:33px;color:#ffa476;font-size:.63rem;letter-spacing:.2em;font-weight:800}
body.postid-9694 .article-hero .article-meta{color:#e4a07b;letter-spacing:.13em}
body.postid-9694 .article-hero h1{max-width:1030px;font-size:clamp(3.2rem,6.3vw,6.9rem);letter-spacing:-.062em;line-height:.97}
body.postid-9694 .article-hero .article-deck{max-width:780px;line-height:1.8}
body.postid-9694 .article-featured{margin:0 auto;background:#111319;max-width:none;padding:0 28px 48px;display:flex;justify-content:center}
body.postid-9694 .article-featured img{display:block;background:#f3f0e9;max-width:800px;width:100%;height:auto;max-height:240px;object-fit:contain;box-sizing:border-box;border-radius:18px;padding:45px;box-shadow:0 30px 80px rgba(0,0,0,.2)}
body.postid-9694 .article-body{padding:100px 0 110px;background:#f2eee7;color:#1c2228}
body.postid-9694 .article-body .container{max-width:1230px}
body.postid-9694 .article-content{max-width:805px;margin:0 auto;font-size:1.075rem;line-height:1.95;color:#303741}
body.postid-9694 .article-content>p:first-of-type{font-size:1.35rem;line-height:1.75;color:#1b2025;font-weight:550;border-left:4px solid var(--tr-accent);padding-left:25px;margin:0 0 35px}
body.postid-9694 .article-content h2{font-family:"Bricolage Grotesque","Manrope",sans-serif;font-size:clamp(2.1rem,3.5vw,3.65rem);font-weight:800;letter-spacing:-.055em;line-height:1.1;margin:80px 0 24px;padding-top:24px;border-top:1px solid #d7d2c9;color:#181d24}
body.postid-9694 .article-content h3{font-family:"Bricolage Grotesque","Manrope",sans-serif;color:#21252a;font-size:1.65rem;line-height:1.2;letter-spacing:-.035em;margin:40px 0 10px}
body.postid-9694 .article-content p,body.postid-9694 .article-content li{color:#404751;line-height:1.92}
body.postid-9694 .article-content p{margin:0 0 24px}
body.postid-9694 .article-content ul,body.postid-9694 .article-content ol{padding-left:25px;margin:18px 0 37px}
body.postid-9694 .article-content li{padding-left:8px;margin:10px 0}
body.postid-9694 .article-content a{color:#a54119;font-weight:750;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
body.postid-9694 .article-content a:hover{color:#6d2a0f}
body.postid-9694 .article-content a:focus-visible{outline:3px solid var(--tr-accent);outline-offset:4px}
body.postid-9694 .article-content strong{color:#171b22}
body.postid-9694 .article-content h2:first-of-type{margin-top:52px}
body.postid-9694 .inner-cta{background:#141820}
body.postid-9694 .inner-cta .btn-primary{background:var(--tr-accent);color:#15110c}
@media(max-width:700px){
body.postid-9694 .article-hero{padding:132px 0 68px}
body.postid-9694 .article-hero h1{font-size:clamp(2.85rem,11.8vw,4.7rem)}
body.postid-9694 .article-hero:after{display:none}
body.postid-9694 .article-body{padding:55px 0 80px}
body.postid-9694 .article-content h2{margin-top:56px;font-size:clamp(2rem,8.5vw,2.8rem)}
body.postid-9694 .article-featured img{padding:30px;max-height:190px}
}

/* Premium Bristol AI, Search & Software launch section */
.growth-launch{position:relative;overflow:hidden;padding:108px 0 90px;background:#eae5da;color:#141920;border-top:1px solid #dbd4c7;border-bottom:1px solid #d1c9ba}
.growth-launch:before{content:"UBBI / GROWTH";position:absolute;right:-.05em;top:-.22em;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(9rem,22vw,21rem);letter-spacing:-.095em;line-height:1;color:rgba(15,23,34,.027);pointer-events:none}
.growth-launch-inner{position:relative}
.growth-launch .section-index{color:#a34a23}
.growth-launch-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(32px,7vw,120px);align-items:end;margin-bottom:54px}
.growth-launch h2{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(4rem,7.5vw,8rem);line-height:.9;letter-spacing:-.076em;margin:16px 0 0;text-wrap:balance;font-weight:800}
.growth-launch h2 em{font-family:"Instrument Serif",serif;font-weight:400;color:#a74925;letter-spacing:-.05em}
.growth-launch-aside{padding:0 0 11px}
.growth-launch-aside p{font-size:1.07rem;line-height:1.85;color:#454b50;margin:0 0 26px}
.growth-launch-aside a{display:inline-block;font-size:.86rem;font-weight:850;border-bottom:1px solid #aa4c28;padding-bottom:8px;color:#1b242b}
.growth-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #b7afa1;border-bottom:1px solid #b7afa1}
.growth-launch-item{position:relative;color:#151d23;padding:35px 34px 52px;border-right:1px solid #b7afa1;min-height:290px;transition:background .25s ease}
.growth-launch-item:first-child{padding-left:0}
.growth-launch-item:last-child{border-right:0}
.growth-launch-item:hover{background:rgba(255,255,255,.38)}
.growth-launch-num{font-size:.62rem;letter-spacing:.19em;color:#9a4b2c;font-weight:850}
.growth-launch-item h3{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(1.8rem,2.6vw,2.7rem);letter-spacing:-.052em;line-height:1.1;margin:25px 0 16px}
.growth-launch-item p{font-size:.91rem;line-height:1.75;color:#5a6066;margin:0;max-width:340px}
.growth-launch-item>b{position:absolute;right:29px;bottom:24px;color:#9a4b2c;font-size:1.3rem}
.growth-launch-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:25px}
.growth-launch-footer p{font-size:.88rem;line-height:1.6;color:#4b5155;margin:0}
.growth-launch-footer p strong{color:#171d24}
.growth-launch-footer a{flex-shrink:0;color:#9d4522;font-weight:850;font-size:.88rem;text-decoration:underline;text-underline-offset:5px}
@media(max-width:980px){.growth-launch-top{grid-template-columns:1fr;gap:24px}.growth-launch-aside{max-width:710px}.growth-launch{padding:85px 0 72px}}
@media(max-width:780px){.growth-launch h2{font-size:clamp(3.8rem,11vw,6.2rem)}.growth-launch-grid{grid-template-columns:1fr}.growth-launch-item,.growth-launch-item:first-child{border-right:0;border-bottom:1px solid #b7afa1;padding:27px 16px 35px 0;min-height:0}.growth-launch-item:last-child{border-bottom:0}.growth-launch-item h3{margin:14px 0;font-size:2.1rem}.growth-launch-item>b{right:6px;bottom:22px}.growth-launch-footer{align-items:start;flex-direction:column;gap:13px}}
@media(max-width:420px){.growth-launch{padding:75px 0 64px}.growth-launch h2{font-size:3.6rem}.growth-launch-item h3{font-size:1.8rem}}

.tr-project-spotlight{margin-top:26px;border-radius:30px;background:linear-gradient(115deg,#191c22,#251715);border:1px solid rgba(255,120,59,.3);padding:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);overflow:hidden;min-height:355px}
.tr-project-spotlight-copy{padding:clamp(32px,5vw,65px);display:flex;flex-direction:column;justify-content:center}
.tr-project-spotlight-copy .project-tag{color:#ffc3a5}
.tr-project-spotlight h3{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(2.4rem,4vw,4.8rem);line-height:1.02;letter-spacing:-.06em;margin:18px 0}
.tr-project-spotlight h3 em{font-family:"Instrument Serif",serif;font-weight:400;color:#ffb08a}
.tr-project-spotlight p{max-width:560px;color:#b7b8bd;line-height:1.65}
.tr-project-spotlight .text-link{color:#fff;align-self:flex-start;margin-top:18px}
.tr-project-spotlight-visual{position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,rgba(255,128,73,.35),transparent 44%),linear-gradient(150deg,#302019,#10141b);min-height:300px}
.tr-project-spotlight-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:58px 58px;opacity:.4}
.tr-project-spotlight-visual img{width:min(65%,370px);padding:20px;background:#faf8f5;border-radius:16px;position:relative;transform:rotate(-3deg);box-shadow:0 30px 75px rgba(0,0,0,.4);transition:transform .4s}
.tr-project-spotlight:hover img{transform:rotate(0deg)}
@media(max-width:1100px){.ventures-section .venture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
.work-archive .archive-grid{grid-template-columns:1fr}
.work-archive .archive-card:first-child{grid-column:1;grid-template-columns:1fr;min-height:0}
.work-archive .archive-card:first-child .archive-thumb{grid-row:1;grid-column:1;min-height:280px;height:300px}
.work-archive .archive-card:first-child .archive-card-copy{grid-row:2;grid-column:1}
.work-archive .archive-card:first-child h2{font-size:clamp(2.35rem,5vw,4rem)}
.page-main-tech-revive .entry-content>.hero .hero-split{grid-template-columns:1fr;gap:34px}
.page-main-tech-revive .entry-content .hero .premium-visual{min-height:310px!important}
.tr-project-spotlight{grid-template-columns:1fr}
.tr-project-spotlight-visual{min-height:270px;grid-row:1}
.tr-project-spotlight-copy{grid-row:2}
}
@media(max-width:780px){.ventures-section .venture-grid{grid-template-columns:1fr}}
@media(max-width:600px){
.work-archive .archive-card:first-child .archive-thumb{min-height:215px;height:240px}
.work-archive .archive-card:first-child .archive-thumb img{padding:20px!important}
.work-archive .archive-card:first-child .archive-card-copy{padding:30px 26px 36px}
.work-archive .archive-card .archive-card-copy{padding:27px}
.work-archive .editorial-masthead:after{display:none}
.page-main-tech-revive .entry-content>.hero{padding:135px 0 70px!important;min-height:0}
.page-main-tech-revive .entry-content .hero h1{font-size:clamp(2.9rem,12vw,4.5rem)}
.page-main-tech-revive .entry-content>.section{padding:68px 0!important}
.page-main-tech-revive .entry-content>.section .section-title{font-size:clamp(2.45rem,11vw,3.5rem)}
.page-main-tech-revive .entry-content>.section .glass.card{padding:25px}
.page-main-tech-revive .entry-content>.hero:after{font-size:.52rem;bottom:19px}
.tr-project-spotlight h3{font-size:clamp(2.4rem,11vw,4rem)}
}
@media(prefers-reduced-motion:reduce){
.work-archive .archive-card,.work-archive .archive-card:first-child .archive-thumb img,.page-main-tech-revive .entry-content .glass.card,.tr-project-spotlight-visual img{transition:none!important}
.work-archive .archive-card:hover,.work-archive .archive-card:first-child:hover .archive-thumb img,.page-main-tech-revive .entry-content .glass.card:hover,.tr-project-spotlight:hover img{transform:none!important}
}
