/* Shared phone layout, loaded after page-specific styles. */
@media(max-width:700px){
#tera-concept{font-size:15px;line-height:1.6}
#tera-concept .tt-header{padding:14px 20px;min-height:72px;gap:12px;align-items:center}
#tera-concept .tt-header .tt-wordmark{font-size:28px;letter-spacing:-1.5px}
#tera-concept .tt-header-enquire{font-size:13px;min-height:44px;margin:0 0 0 auto;padding:0;border:0}
#tera-concept .tt-mobile-menu{width:36px;min-height:44px;display:flex;align-items:center;justify-content:center}
#tera-concept nav.tt-open{display:grid;grid-template-columns:1fr;gap:0;padding-top:8px}
#tera-concept nav a{font-size:15px;min-height:48px;border-bottom:1px solid #eee}
#tera-concept h1,#tera-concept .tt-about-hero h1,#tera-concept .tt-contact-intro h1,#tera-concept .tt-detail-copy h1,#tera-concept .tt-enquiry-grid h1{font-size:34px;line-height:1.15;letter-spacing:-.025em}
#tera-concept h2,#tera-concept .tt-home .tt-section-head h2,#tera-concept .tt-custom-copy h2{font-size:27px;line-height:1.2;letter-spacing:-.025em}
#tera-concept .tt-eyebrow{font-size:10px;line-height:1.5;letter-spacing:.09em;margin-bottom:12px}
#tera-concept .tt-section{padding:36px 20px}
#tera-concept .tt-section-head{gap:12px;margin-bottom:24px}
#tera-concept .tt-section-head h2{max-width:none}
#tera-concept .tt-view{padding:32px 20px 40px}
#tera-concept .tt-hero{display:block;height:auto;max-height:none;min-height:0;padding:0;background:white;overflow:hidden}
#tera-concept .tt-hero-copy{max-width:none;padding:32px 20px 24px}
#tera-concept .tt-hero h1{font-size:36px;line-height:1.12;margin:0 0 20px;letter-spacing:-.03em}
#tera-concept .tt-hero .tt-lead{font-size:15px;line-height:1.65;max-width:none}
#tera-concept .tt-hero .tt-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
#tera-concept .tt-hero .tt-actions a{width:100%;text-align:center;display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;box-sizing:border-box}
#tera-concept .tt-hero .tt-text-button{border:1px solid #dedede;background:white}
#tera-concept .tt-hero-footnote{margin-top:18px;font-size:12px;justify-content:center;gap:24px}
#tera-concept .tt-hero-photo{position:relative;inset:auto;z-index:auto;width:100%;height:250px;aspect-ratio:auto;border-radius:0;margin:0}
#tera-concept .tt-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:70% center}
#tera-concept .tt-hero:after{display:none}
#tera-concept .tt-hero-photo figcaption{font-size:9px;left:12px;bottom:10px;right:auto}
#tera-concept .tt-facts{margin:0 20px;padding:20px 0;gap:10px}
#tera-concept .tt-facts>div{font-size:12px}
#tera-concept .tt-products,#tera-concept .tt-home .tt-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
#tera-concept .tt-product-photo{aspect-ratio:1;border-radius:4px}
#tera-concept .tt-product-meta,#tera-concept .tt-home .tt-product-meta{display:block;margin-top:10px}
#tera-concept .tt-product-meta strong,#tera-concept .tt-home .tt-product-meta strong{display:block;font-size:14px;line-height:1.35;font-weight:600}
#tera-concept .tt-product-meta>span,#tera-concept .tt-home .tt-product-meta>span{display:block;font-size:13px;margin-top:4px;line-height:1.4}
#tera-concept .tt-product>.tt-secondary{font-size:12px;line-height:1.45;margin-top:4px}
#tera-concept .tt-image-note{font-size:11px;line-height:1.6}
#tera-concept .tt-custom{gap:24px;padding-top:36px;padding-bottom:36px}
#tera-concept .tt-custom-photo{height:auto;aspect-ratio:4/3}
#tera-concept .tt-custom-photo img{height:100%;width:100%;object-fit:cover}
#tera-concept .tt-custom-copy h1{font-size:34px}
#tera-concept .tt-custom-copy>p:not(.tt-eyebrow){font-size:15px;line-height:1.65}
#tera-concept .tt-button{min-height:48px;font-size:14px;padding:13px 18px}
#tera-concept .tt-text-button{min-height:44px;font-size:14px;line-height:1.5}
#tera-concept #real-homes .tt-real-grid,#tera-concept .tt-home #real-homes .tt-real-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
#tera-concept .tt-real-card h3{font-size:14px;line-height:1.4;margin:12px 0 6px}
#tera-concept .tt-real-card p{font-size:12px;line-height:1.6}
#tera-concept .tt-home .tt-real-card p{display:none}
#tera-concept .tt-real-card img{border-radius:4px}
#tera-concept .tt-projects{gap:28px}
#tera-concept .tt-project-photo{height:auto;aspect-ratio:4/3}
#tera-concept .tt-project-meta strong{font-size:17px;line-height:1.35}
#tera-concept .tt-project-meta .tt-secondary{font-size:12px;line-height:1.5}
#tera-concept .tt-process-grid{gap:24px}
#tera-concept .tt-process-grid article{padding-bottom:20px;border-bottom:1px solid #eee}
#tera-concept .tt-process-grid h3{font-size:18px}
#tera-concept .tt-contact{margin:0 20px 32px;padding:28px 0;gap:18px}
#tera-concept .tt-contact p:not(.tt-eyebrow){font-size:14px;line-height:1.65}
#tera-concept .tt-footer{padding:28px 20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;border-top:1px solid #eee}
#tera-concept .tt-footer>div:first-child{grid-column:1/-1}
#tera-concept .tt-footer p,#tera-concept .tt-footer a:not(.tt-wordmark){font-size:13px;line-height:1.7}
#tera-concept .tt-footer a:not(.tt-wordmark):not(.tt-social-icon){min-height:36px;margin-bottom:2px}
#tera-concept .tt-footer>div:nth-child(4){grid-column:1/-1}
#tera-concept .tt-footer-label{margin-bottom:10px}
#tera-concept .tt-footer-bottom{margin-top:0;font-size:11px}
#tera-concept .tt-contact-intro{padding:32px 0}
#tera-concept .tt-company-page .tt-story p{font-size:15px;line-height:1.75}
#tera-concept input,#tera-concept select,#tera-concept textarea{font-size:16px;min-height:48px;box-sizing:border-box;max-width:100%}
#tera-concept .tt-back{font-size:13px;margin-bottom:24px;display:inline-block}
#tera-concept .tt-project-description{gap:24px;margin-top:24px}
#tera-concept .corp-hero h1{font-size:34px;line-height:1.15}
#tera-concept .corp-section{padding-top:36px;padding-bottom:36px}
}
@media(max-width:360px){#tera-concept .tt-header{padding-left:16px;padding-right:16px;gap:8px}#tera-concept .tt-header .tt-wordmark{font-size:25px}#tera-concept .tt-hero h1{font-size:33px}}
@media(max-width:700px){
#tera-concept .corp-intro{padding:32px 20px 24px}
#tera-concept .corp-title-row h1{font-size:34px;line-height:1.15;letter-spacing:-.025em}
#tera-concept .corp-title-row p,#tera-concept .corp-opening div p{font-size:15px;line-height:1.65}
#tera-concept .corp-page h2{font-size:27px;line-height:1.2;letter-spacing:-.025em}
#tera-concept .corp-section{padding:36px 20px}
#tera-concept .corp-facts{margin-top:24px;gap:10px;padding-top:18px;font-size:12px}
#tera-concept .corp-cover figcaption{font-size:10px;letter-spacing:0;gap:12px;padding:14px 20px;line-height:1.5}
}
