:root{--paper:#f7f7f3;--ink:#252927;--muted:#676c66;--line:#d9dcd4;--sand:#d9d2c4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}::selection{background:#d5ddc8}.preview{background:#282e2a;color:#e8ebe4;text-align:center;font-size:11px;letter-spacing:.08em;padding:10px}.preview span{margin:0 10px;color:#aab39d}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:17px;font-weight:700;letter-spacing:.09em;display:flex;align-items:center;gap:12px}.mark{font-size:35px;font-weight:400}.brand small{display:block;font-size:8px;letter-spacing:.2em;font-weight:400;margin-top:6px;color:var(--muted)}nav{display:flex;align-items:center;gap:38px;font-size:13px}.nav-contact{border:1px solid #bec3ba;padding:13px 20px}.nav-contact span{margin-left:24px}.menu{display:none}.hero{padding:58px 5% 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.hero-copy{padding:35px 0 45px}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;margin:0 0 28px}h1{font-size:clamp(54px,6.8vw,102px);font-weight:400;line-height:1.02;letter-spacing:-.065em;margin:0 0 28px}em{font-family:Georgia,serif;font-weight:400}h1 em{letter-spacing:-.06em}.lead{color:var(--muted);line-height:1.65;font-size:17px;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--ink);color:white;padding:18px 23px;border:1px solid var(--ink);font-size:12px;transition:background .2s}.button:hover{background:#465044}.button span{font-size:20px}.opening{font-size:11px;color:var(--muted);margin-top:30px;display:flex;gap:8px;align-items:center}.opening i{width:6px;height:6px;background:#87967b;border-radius:50%}.hero-image{position:relative;min-height:525px;background:#d7d6cf;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:55% center}.image-label{position:absolute;top:22px;left:22px;font-size:9px;letter-spacing:.13em;background:#f7f7f3ed;padding:11px}.hero-image small{position:absolute;bottom:16px;right:16px;font-size:9px;background:#f7f7f3e8;padding:7px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);padding:4px 0 24px}.section{padding:90px 5%}.section-heading{display:grid;grid-template-columns:1fr 2.1fr;gap:30px}.section-heading>div{display:flex;justify-content:space-between;gap:35px;align-items:flex-end}h2{font-size:clamp(34px,4vw,58px);font-weight:400;letter-spacing:-.05em;line-height:1.08;margin:0}p{line-height:1.7}.section-heading>div>p{max-width:280px;color:var(--muted);font-size:13px;margin:0}.filters{display:flex;gap:8px;margin:43px 0 25px;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:transparent;padding:11px 18px;font-size:11px;border-radius:2px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.material-grid article[hidden]{display:none}.material{height:280px;position:relative;overflow:hidden;background-color:#bcbdb7}.material:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 60px #3332;background:repeating-linear-gradient(0deg,transparent 0,transparent calc(50% - 1px),#42473c55 50%),repeating-linear-gradient(90deg,transparent 0,transparent calc(50% - 1px),#42473c55 50%)}.concrete{background:radial-gradient(ellipse at 30% 10%,#deded8,transparent 70%),repeating-linear-gradient(14deg,#b5b7af 0,#c0c1ba 2px,#bdbfb6 5px)}.stone{background:repeating-linear-gradient(166deg,#c5bdaa 0,#d4cdbc 12px,#c8c0af 15px,#d7d0bf 27px,#bfb7a6 29px,#d2cbbb 60px)}.wood{background:repeating-linear-gradient(90deg,#a28765 0,#b99d77 2px,#c0a27e 4px,#b49a79 9px,#c5aa84 13px,#a99070 16px,#b99e7b 25px)}.wood:after{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#4f3e2677 25%)}.material>span{position:absolute;top:18px;left:18px;font-size:11px;z-index:1}.material>b{position:absolute;bottom:20px;left:20px;font-size:28px;letter-spacing:.12em;color:#fff;z-index:1;font-weight:400}.card-title{display:flex;align-items:center;justify-content:space-between;margin-top:20px}h3{font-size:17px;font-weight:400;margin:0}.material-grid article p{font-size:12px;color:var(--muted);max-width:270px;margin:9px 0}.note{font-size:10px;color:var(--muted);line-height:1.6;margin-top:22px}.idea{background:#e9ebe5}.idea-main{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:40px}.idea-main h2{font-size:clamp(46px,6vw,84px)}.idea-main>div{max-width:450px}.idea-main p{color:var(--muted);font-size:14px}.idea-main .large{font-size:22px;color:var(--ink);margin-top:0;line-height:1.4}.location{display:block;font-size:9px;letter-spacing:.13em;line-height:1.8;margin-top:38px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact>div>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:320px;margin-top:28px}.contact-note{border-left:2px solid #a4ad9b;padding-left:18px;margin-top:40px;font-size:12px}.contact-note b{font-weight:500}.contact-note p{color:var(--muted);font-size:12px;max-width:300px}.form-badge{font-size:9px;letter-spacing:.1em;background:#e9ebe5;padding:12px;margin-bottom:25px}label{display:block;font-size:11px;margin:20px 0 9px}input,textarea{width:100%;border:0;border-bottom:1px solid #bfc4ba;border-radius:0;background:transparent;padding:10px 0;color:var(--ink);font-size:13px}textarea{resize:vertical}form .button{width:100%;margin-top:8px}#form-status{font-size:12px;background:#e4eadf;padding:15px}footer{margin:0 5%;border-top:1px solid var(--line);padding:35px 0;display:flex;gap:35px;justify-content:space-between;align-items:start}footer .brand{font-size:12px}footer p{font-size:10px;color:var(--muted);margin:0}footer button{font-size:10px;background:transparent;border:0;color:var(--muted);padding:0;margin-left:18px}dialog{border:1px solid var(--line);padding:45px;max-width:560px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#20262080}dialog p{font-size:14px}.close{float:right;background:transparent;border:0;font-size:26px}.menu{background:transparent;border:0;font-size:12px}
@media(min-width:1600px){body{max-width:1600px;margin:auto}}@media(max-width:900px){header{height:85px}nav{gap:18px}.hero{gap:20px;padding-top:30px}.hero-image{min-height:450px}.hero-copy{padding-top:20px}h1{font-size:62px}.lead{font-size:14px}.section-heading{grid-template-columns:1fr}.section-heading>div{gap:25px}.material{height:220px}.section{padding-top:65px;padding-bottom:65px}.contact{gap:7%}.brand{font-size:14px}}@media(max-width:600px){html{scroll-padding-top:20px}.preview{font-size:9px}header{height:78px;position:relative}.brand{font-size:12px}.mark{font-size:29px}.menu{display:block}nav{display:none;position:absolute;top:78px;left:0;right:0;padding:25px 5%;background:var(--paper);z-index:5;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:22px}.nav-contact{display:flex;justify-content:space-between}.hero{grid-template-columns:1fr;padding-top:17px;gap:16px}.hero-copy{padding:18px 0 12px}.eyebrow{margin-bottom:22px;font-size:9px}h1{font-size:64px;margin-bottom:20px}.lead{font-size:15px}.hero-image{min-height:355px}.hero-bottom{font-size:9px;padding:7px 0 20px;gap:10px}.section{padding-top:55px;padding-bottom:55px}.section-heading>div{display:block}.section-heading>div>p{margin-top:22px;max-width:340px}h2{font-size:39px}.filters{margin-top:28px;gap:6px}.filters button{font-size:10px;padding:10px 12px}.material-grid{grid-template-columns:1fr;gap:28px}.material{height:285px}.material-grid article p{max-width:100%}.idea-main,.contact{grid-template-columns:1fr;gap:36px}.idea-main{margin-top:28px}.idea-main h2{font-size:58px}.idea-main .large{font-size:21px}.contact-note{margin-top:25px}footer{flex-wrap:wrap;gap:22px}footer p{width:100%;order:3}footer button{margin-left:12px}dialog{width:90%;padding:28px}dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

header .brand>span:last-child{font-size:30px;letter-spacing:.12em;line-height:1}header .brand small{font-size:9px;letter-spacing:.3em;margin-top:7px}@media(max-width:600px){header .brand>span:last-child{font-size:25px}}

/* FRA brand: original supplied logo, presented without altering the asset. */
:root{--paper:#f8f8f5;--ink:#171717;--muted:#656565;--line:#dcdcd7}
::selection{background:#dcdcd7}
.preview{background:#efefeb;color:#5b5b58}.preview span{color:#777}
header{height:104px;background:#000;color:#fff;border-bottom:0}
header .brand .logo-frame,.logo-frame{display:block;position:relative;width:112px;height:84px;overflow:hidden;flex:none;font-size:0;line-height:0}
.logo-frame img{position:absolute;display:block;width:124px;height:124px;max-width:none;left:-6px;top:-17px;object-fit:contain}
header .brand{gap:0}header .brand>span:last-child{font-size:0;line-height:0}
nav{gap:36px;font-size:12px;letter-spacing:.025em}nav>a{transition:opacity .2s}nav>a:hover{opacity:.7}
.nav-contact{border-color:#444;padding:11px 18px}.menu{color:inherit}
.button:hover{background:#3e3e3e}.opening i{background:#777}
.eyebrow-divider{color:#aaa;margin:0 12px}
.hero-image{border:1px solid #e0e0db}
.idea{background:#edede8}.form-badge{background:#edede8}
.contact-note{border-left-color:#777}#form-status{background:#eaeae5}
footer{background:#000;color:#fff;margin:0;padding:24px 5%;border:0;align-items:center;gap:36px}
footer p,footer button{color:#bcbcbc}footer button{padding:12px 0}footer button:hover{color:#fff}
@media(max-width:900px){header{height:100px}nav{gap:24px}}
@media(max-width:600px){header{height:92px}.logo-frame,header .brand .logo-frame{width:98px;height:74px}.logo-frame img{width:110px;height:110px;left:-6px;top:-15px}nav{top:92px;background:#000;border-color:#444}nav.open{padding-bottom:28px}.menu{min-height:44px;padding:10px 0 10px 20px}.hero{padding-top:25px}.eyebrow-divider{margin:0 8px}footer{gap:24px}footer p{margin-top:0}footer button{margin-left:0;margin-right:18px}}

/* Consistent editorial typography and planned application areas. */
h1,h2{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.045em;line-height:1.12;text-wrap:balance}
h1{font-size:clamp(52px,6.1vw,88px)}h1 em,h2 em{font:inherit;letter-spacing:inherit}
h2{font-size:clamp(34px,3.7vw,54px)}
.hero-copy{padding-top:42px}.hero .lead{font-size:16px;line-height:1.8}
.eyebrow{font-weight:500;letter-spacing:.16em;line-height:1.6}
.section-heading>div{align-items:flex-start}.section-heading>div>p{line-height:1.85}
.applications{padding-bottom:48px}.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:48px}
.application{border-top:1px solid #bdbdb5;padding-top:22px;display:flex;flex-direction:column;align-items:flex-start}
.application-number{font-size:10px;letter-spacing:.16em;color:var(--muted)}
.application h3{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:28px;font-weight:400;line-height:1.25;letter-spacing:-.025em;margin:24px 0 14px}
.application p{font-size:13px;line-height:1.85;color:var(--muted);margin:0 0 24px;max-width:330px}
.application a{font-size:11px;letter-spacing:.02em;border-bottom:1px solid #bdbdb5;padding:10px 0;margin-top:auto;display:flex;gap:30px;align-items:center;min-height:44px}
.application a:hover{border-bottom-color:var(--ink)}.application a span{font-size:17px}
.worlds{padding-top:48px}.card-title h3{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:24px;letter-spacing:-.025em}
select{width:100%;border:0;border-bottom:1px solid #bfc4ba;border-radius:0;background:transparent;padding:12px 0;color:var(--ink);font:inherit;font-size:13px;outline-offset:5px}
@media(max-width:1050px){nav{gap:20px;font-size:11px}.section-heading>div{flex-direction:column;gap:24px}.section-heading>div>p{max-width:420px}}
@media(max-width:700px){.application-grid{gap:24px}.application h3{font-size:24px}}
@media(max-width:600px){h1{font-size:clamp(43px,11.5vw,64px);line-height:1.12}h2{font-size:37px}.hero-copy{padding-top:18px}.hero .lead{font-size:14px}.application-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.application h3{font-size:29px;margin-top:17px}.application p{max-width:100%;margin-bottom:10px}.application a{width:100%;justify-content:space-between}.applications{padding-bottom:28px}.worlds{padding-top:28px}.idea-main h2{font-size:48px}nav{font-size:13px}}

/* Balanced split hero, including narrower desktop preview panels. */
.hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px;align-items:stretch;padding-top:44px}
.hero-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px 0}
.hero h1{font-size:clamp(42px,5.8vw,82px);line-height:1.08;letter-spacing:-.045em;text-wrap:initial;margin-bottom:25px}
.hero .lead{font-size:15px;line-height:1.8;margin:0 0 28px}
.hero .eyebrow{margin-bottom:25px}.hero .button{gap:24px;padding:15px 20px}
.hero-image{min-width:0;min-height:490px}.hero-image img{object-position:52% center}
.hero-bottom{padding-top:7px}.opening{line-height:1.6}
@media(min-width:521px) and (max-width:900px){
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;padding-top:32px}
 .hero h1{font-size:clamp(34px,5.9vw,54px)}
 .hero-copy{padding:18px 0}.hero .eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:20px}
 .hero .lead{font-size:12px;margin-bottom:22px}.hero .button{font-size:10px;padding:13px 12px;gap:12px}
 .hero-image{min-height:380px}.hero .opening{font-size:9px;margin-top:22px}
 .image-label{left:12px;top:12px;padding:8px;font-size:8px}.hero-image small{font-size:8px;right:8px;bottom:8px}
}
@media(max-width:520px){
 .hero{grid-template-columns:minmax(0,1fr);gap:22px;padding-top:26px}
 .hero-copy{padding:10px 0 5px}.hero h1{font-size:clamp(43px,11.5vw,60px)}
 .hero .lead{font-size:14px}.hero-image{min-height:340px}
 .hero .eyebrow{margin-bottom:22px}.hero-bottom{font-size:9px}
}

/* Release preparation: stronger separation and quiet controls. */
.application-grid{gap:0;border-top:1px solid #c8c8c0;border-bottom:1px solid #c8c8c0}
.application{border-top:0;padding:32px 30px 30px}.application:first-child{padding-left:0}.application:last-child{padding-right:0}
.application+.application{border-left:1px solid #c8c8c0}.application h3{max-width:270px;min-height:2.5em}
.material-grid{margin-top:38px}.nav-contact span,.button span{display:none}
.contact-details{font-style:normal;margin-top:32px;border-top:1px solid var(--line);padding-top:24px}
.contact-details p{font-size:14px;line-height:1.8}.contact-person{font-weight:600}.contact-phone{font-size:20px;display:inline-block;margin:4px 0;border-bottom:1px solid #bbb;padding:8px 0}
.form-notice{font-size:13px;line-height:1.7;background:#edede8;padding:18px 20px;margin:0 0 18px}
fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled{opacity:.6}button:disabled{cursor:not-allowed;background:#555}
footer>div{display:flex;gap:24px}footer>div>a{font-size:11px;color:#ccc;padding:12px 0}footer>div>a:hover{color:white}
.legal-page{max-width:820px;padding:65px 5% 90px;margin:auto}.back-link{display:inline-block;font-size:12px;border-bottom:1px solid #aaa;padding-bottom:5px;margin-bottom:35px}
.legal-page h1{font-size:54px;margin-bottom:40px}.legal-page h2{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-size:20px;letter-spacing:-.02em;line-height:1.4;margin:0 0 15px}
.legal-page section{margin:35px 0}.legal-page p{font-size:14px;line-height:1.85;color:var(--muted)}.legal-page section a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-date{font-size:12px}
@media(max-width:850px) and (min-width:601px){.application{padding:25px 18px}.application h3{font-size:24px}}
@media(max-width:600px){.application-grid{border-top:0;border-bottom:0;gap:0}.application,.application:first-child,.application:last-child{padding:25px 0;border-top:1px solid #c8c8c0}.application+.application{border-left:0}.application h3{min-height:0;max-width:none}.legal-page{padding-top:38px}.legal-page h1{font-size:42px}.contact-phone{font-size:19px}}

.faq{border-top:1px solid var(--line)}.faq-list{max-width:850px;margin:35px 0 0 auto}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:17px;line-height:1.5;cursor:pointer;padding-right:20px}.faq p{font-size:14px;color:var(--muted);max-width:700px;line-height:1.85}.faq a{text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.faq summary{font-size:15px}.faq-list{margin-top:25px}}

.contact-email a{display:inline-block;font-size:16px;overflow-wrap:anywhere;border-bottom:1px solid #bbb;padding-bottom:4px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-status{font-size:14px;line-height:1.7;padding:14px;border:1px solid #ccc}footer>div{flex-wrap:wrap}
