:root{--ink:#131413;--paper:#f3f1eb;--muted:#666860;--line:#d2d2c9;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}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{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8a977d;outline-offset:6px}::selection{background:#bbc3ad;color:#131413}.skip{position:fixed;top:-100px;left:20px;padding:14px;background:white;z-index:100}.skip:focus{top:10px}.header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff24;color:var(--paper);position:absolute;inset:0 0 auto;z-index:5}.brand{font-size:44px;font-weight:900;letter-spacing:-4px;line-height:.85;display:block}.brand span{font-size:8px;letter-spacing:2px;display:block;margin-top:10px;font-weight:500}.header nav{display:flex;align-items:center;gap:42px;font-size:13px}.header nav a{padding:12px 0}.header nav a:last-child{border:1px solid #ffffff6b;padding:13px 20px}.header nav a:last-child span{padding-left:25px;font-size:20px}.header nav a:hover{color:#c5cbbd}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.hero{height:min(860px,95svh);min-height:660px;background:#141615;color:var(--paper);position:relative;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('assets/hero-rost.jpg') center right/cover no-repeat;opacity:.8}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,15,14,.95) 0%,rgba(13,15,14,.82) 30%,rgba(13,15,14,.12) 75%),linear-gradient(0deg,rgba(10,12,11,.6),transparent 30%)}.hero-content{position:relative;padding:185px 5% 100px;max-width:1000px}.eyebrow,.section-label,.mini-label{font-size:10px;letter-spacing:1.8px;font-weight:600}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c7cebb;margin-right:7px;vertical-align:middle}.hero h1{font-size:clamp(70px,8.2vw,125px);line-height:.94;letter-spacing:-7px;margin:38px 0 25px;font-weight:900}.hero h1 span{color:#cbd0c3}.hero p{color:#cbcfc8;font-size:16px;line-height:1.7;margin:0 0 30px}.button{display:inline-flex;gap:45px;align-items:center;padding:17px 22px;font-size:12px;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);background:#d7ddce}.button span{font-size:24px;font-weight:400}.light{background:var(--paper);color:var(--ink)}.hero-bottom{position:absolute;bottom:28px;left:5%;right:5%;display:flex;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:22px;font-size:9px;letter-spacing:1.8px}.hero-bottom a span{margin-left:25px;font-size:18px}.hero-index{position:absolute;right:5%;top:145px;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;color:#cbd0c3}.principles-strip{padding:25px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px;font-size:clamp(16px,2.1vw,31px);font-weight:600;letter-spacing:-.5px}.asterisk{font-size:34px;font-weight:400;color:#75796e}.section-wrap{padding:110px 7%}.section-label{margin-bottom:30px;color:#6d7167}.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:35px}.intro>.section-label{padding-top:12px}h2{font-size:clamp(36px,4.4vw,64px);font-weight:500;letter-spacing:-2.6px;line-height:1.08;margin:0 0 34px}h2 em{font-family:var(--serif);font-weight:400}p{font-size:15px;line-height:1.8}.intro-copy{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}.intro-copy p{margin:0;color:#5b5d55}.intro-copy p:first-child{color:var(--ink)}.services{border-top:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.side-note{font-size:13px;color:#5b5d55;margin-bottom:36px}.service-list{border-top:1px solid var(--ink);margin-top:30px}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{display:grid;grid-template-columns:70px 1fr 1fr 25px;align-items:center;padding:30px 0;cursor:pointer;list-style:none;gap:20px}.service-list summary::-webkit-details-marker{display:none}.service-no{color:#74786b;font-size:11px}.service-list h3{font-weight:400;font-size:36px;letter-spacing:-1px;margin:0}.service-teaser{color:#676a61;font-size:13px}.plus{width:20px;height:20px;position:relative}.plus:before,.plus:after{content:'';position:absolute;background:var(--ink);left:1px;right:1px;top:9px;height:1px}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open] .plus:after{transform:rotate(0)}.service-detail{padding:0 60px 35px 90px;max-width:750px}.service-detail p{margin:0 0 18px;color:#65685e;font-size:14px}.service-detail>span{font-size:9px;letter-spacing:1.8px}.service-foot{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:25px}.service-foot p{font-size:11px;color:#72756a;margin:0}.text-link{font-size:12px;border-bottom:1px solid #93978a;padding-bottom:7px;display:inline-flex;gap:30px;align-items:center;line-height:1.5}.text-link span{font-size:20px}.style-section{background:#e5e7df}.style-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.style-layout>div>p{color:#686b61;font-size:14px}.style-options{display:flex;border-bottom:1px solid #b3b8a9}.style-options button{background:transparent;border:0;padding:16px 20px;font-size:12px;cursor:pointer;flex:1;color:#606657;border-bottom:2px solid transparent;margin-bottom:-1px}.style-options button.active{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.style-options button:hover{background:#d9ddd1}.style-result{padding:35px 5px 0}.style-result>span{font-size:9px;letter-spacing:1.5px;color:#6c7261}.style-result h3{font-size:28px;letter-spacing:-1px;font-weight:500;margin:20px 0 15px}.style-result>p{font-size:14px;color:#565e4d;min-height:76px}.style-question{border-top:1px solid #c3c9b9;padding-top:25px;margin-top:25px}.style-question span{font-size:8px;letter-spacing:1.8px}.style-question p{font-family:var(--serif);font-style:italic;font-size:18px;line-height:1.5;margin:13px 0 0}.story{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;align-items:center}.story-art{position:relative;aspect-ratio:4/5;overflow:hidden;background:#1e221d;color:#e8ebdf;padding:30px;display:flex;flex-direction:column;justify-content:space-between}.story-art:before{content:'';inset:0;position:absolute;background:repeating-linear-gradient(0deg,transparent 0px,transparent 39px,#e6ecd407 40px),repeating-linear-gradient(90deg,transparent 0px,transparent 39px,#e6ecd407 40px);pointer-events:none}.art-top,.art-bottom{font-size:9px;letter-spacing:2px;position:relative}.art-arrow{position:absolute;right:-15px;top:-30px;font-size:390px;font-weight:300;line-height:1;color:#bec5ac;transform:rotate(0deg);opacity:.85}.art-word{position:absolute;left:20px;bottom:65px;font-size:clamp(75px,10vw,155px);font-weight:900;letter-spacing:-12px;line-height:1}.art-bottom{border-top:1px solid #d7ddc448;padding-top:18px;margin-top:auto}.story-copy p{color:#666a60;font-size:14px}.story-copy .story-statement{color:var(--ink);font-size:22px;line-height:1.5;letter-spacing:-.5px;margin-top:28px}.partner{display:flex;gap:13px;align-items:center;font-size:8px;letter-spacing:1.2px;border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.partner strong{font-size:10px;letter-spacing:1px}.visit{background:#171a16;color:var(--paper)}.visit .section-label{color:#b5beaa}.visit .section-top{align-items:center}.round-arrow{width:85px;height:85px;border:1px solid #747e69;border-radius:50%;font-size:46px;display:grid;place-items:center;color:#cbd3bc}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid #ffffff30;padding-top:45px;margin-top:10px}.mini-label{font-size:9px;color:#b9c0af}.visit h3{font-size:26px;font-weight:400;letter-spacing:-.5px;margin:22px 0 12px;line-height:1.3}.visit-grid p{font-size:13px;color:#acb2a3}.visit .text-link{margin-top:12px}.visit-grid .map-note{font-size:10px;max-width:290px;line-height:1.7;margin-top:22px;color:#9da592}.opening-note{border-left:1px solid #ffffff30;padding-left:60px}.opening-note>p{max-width:330px}.closing{padding:55px 5% 30px;background:#dde1d5;overflow:hidden}.closing>div:first-child{font-size:9px;letter-spacing:2px}.closing>p{font-size:30vw;line-height:.78;font-weight:900;letter-spacing:-2.5vw;margin:50px 0 40px;position:relative}.closing>p>span{font-size:20px;letter-spacing:0;position:absolute;top:0;right:0;font-weight:400}.closing-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;border-top:1px solid #a7af9a;padding-top:24px}footer{padding:25px 5%;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#686d60;background:var(--paper)}.mobile-menu{display:none}@media(min-width:1600px){.hero-content{padding-top:200px}.hero h1{font-size:132px}.section-wrap{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:900px){.hero{min-height:680px}.hero h1{font-size:85px;letter-spacing:-5px}.hero-content{padding-top:185px}.hero-shade{background:linear-gradient(90deg,#0d0f0eec,#0d0f0ea8 50%,#0d0f0e35)}.intro{grid-template-columns:1fr}.intro-copy{gap:30px}.section-wrap{padding:80px 6%}.style-layout{gap:40px}.story{gap:40px}.story h2{font-size:37px;letter-spacing:-1.8px}.art-arrow{font-size:290px;top:10px}.art-word{letter-spacing:-7px;left:15px}.story-art{min-height:430px}.visit-grid{gap:35px}.opening-note{padding-left:35px}}@media(max-width:600px){html{scroll-padding-top:30px}.header{height:85px;padding:0 6%}.brand{font-size:38px}.brand span{font-size:7px}.header nav{display:none}.menu-toggle{display:flex;gap:7px;flex-direction:column;justify-content:center;background:transparent;border:1px solid #ffffff5c;width:42px;height:42px;padding:10px;color:var(--paper)}.menu-toggle span{height:1px;background:currentColor;width:20px}.mobile-menu:not([hidden]){display:flex;position:absolute;top:85px;left:0;right:0;z-index:6;background:#1a1d18;padding:25px 6%;flex-direction:column;gap:25px;color:var(--paper);font-size:16px;border-bottom:1px solid #ffffff33}.hero{height:780px;height:94svh;min-height:650px;max-height:850px}.hero-content{padding:173px 6% 90px}.hero h1{font-size:clamp(60px,14.7vw,85px);letter-spacing:-3.7px;margin-top:40px}.hero p{font-size:13px;line-height:1.8;margin-top:25px}.eyebrow{font-size:8px;letter-spacing:1.3px}.hero-image{background-position:90% center;opacity:.55}.hero-shade{background:linear-gradient(90deg,#0d0f0ee0,#0d0f0e50),linear-gradient(0deg,#0d0f0e9c,transparent 60%)}.hero-index{display:none}.button{padding:14px 18px;margin-top:6px;gap:30px}.hero-bottom{left:6%;right:6%;font-size:7px;letter-spacing:1px;bottom:23px;padding-top:18px}.hero-bottom a span{margin-left:12px}.principles-strip{gap:8px;padding:22px 6%;font-size:12px;letter-spacing:-.3px}.asterisk{font-size:21px}.section-wrap{padding:65px 6%}.section-label{font-size:8px;margin-bottom:25px;letter-spacing:1.4px}.intro{gap:4px}.intro-copy{grid-template-columns:1fr;gap:17px}.intro-copy p{font-size:14px}h2{font-size:39px;letter-spacing:-1.8px;margin-bottom:27px}.section-top{display:block}.side-note{margin-bottom:25px;font-size:12px}.services .section-top{margin-bottom:15px}.service-list summary{grid-template-columns:27px 1fr 19px;gap:10px;padding:26px 0}.service-list h3{font-size:28px}.service-teaser{display:none}.service-detail{padding:0 15px 27px 37px}.service-detail p{font-size:13px}.service-detail>span{font-size:8px;letter-spacing:1.3px}.service-foot{flex-direction:column;align-items:start;gap:25px}.service-foot p{font-size:10px}.style-layout{grid-template-columns:1fr;gap:20px}.style-layout>div>p{font-size:13px}.style-options button{padding:17px 10px}.style-result{padding-top:26px}.style-result>p{min-height:0}.style-result h3{font-size:26px}.style-question p{font-size:17px}.story{grid-template-columns:1fr;gap:45px}.story-art{aspect-ratio:1/1;min-height:0;padding:25px}.art-arrow{font-size:350px;right:0;top:-40px}.art-word{font-size:110px;bottom:65px;left:20px;letter-spacing:-8px}.story-copy h2{font-size:38px}.visit .section-top{display:flex;gap:10px;align-items:start}.round-arrow{width:44px;height:44px;font-size:28px;flex-shrink:0;margin-top:36px}.visit h2{font-size:36px;letter-spacing:-1.7px}.visit-grid{grid-template-columns:1fr;gap:35px;padding-top:30px}.opening-note{border-left:0;border-top:1px solid #ffffff30;padding:30px 0 0}.visit h3{font-size:24px}.closing{padding:35px 6% 25px}.closing>p{font-size:29vw;margin:40px 0 30px}.closing>p>span{font-size:12px}.closing-bottom{font-size:7px;letter-spacing:1px}.closing>div:first-child{font-size:7px}footer{padding:23px 6%;font-size:8px;gap:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Official ROST symbol, original proportions. */
.header .brand{display:inline-flex;align-items:center;gap:15px}.header .brand>.brand-symbol{display:block;width:40px;height:auto;flex-shrink:0;filter:invert(1);opacity:.95}.header .brand>.brand-wordmark{display:block;font-size:44px;font-weight:900;letter-spacing:-4px;line-height:.85;margin:0}.header .brand-wordmark>span{font-size:8px;letter-spacing:2px;margin-top:10px;font-weight:500}.closing .closing-heading{display:flex;align-items:center;gap:20px}.closing-heading img{width:42px;height:auto;display:block}.closing-heading>span{font-size:9px;letter-spacing:2px}@media(max-width:600px){.header .brand{gap:11px}.header .brand>.brand-symbol{width:30px}.header .brand>.brand-wordmark{font-size:38px}.header .brand-wordmark>span{font-size:7px}.closing-heading img{width:32px}.closing-heading>span{font-size:7px;letter-spacing:1.5px}.closing .closing-heading{gap:15px}}

/* Quiet outlines and separators that render consistently on mobile. */
.hero .hero-button{background:transparent;color:var(--paper);border:1px solid #f3f1eb80;padding:15px 21px;gap:30px}
.hero .hero-button:hover{background:#f3f1eb12;border-color:var(--paper)}
.hero-button svg{display:block;flex-shrink:0}
.principle-divider{display:block;flex:0 0 1px;width:1px;height:20px;background:#93958c;transform:rotate(20deg);opacity:.65}
@media(max-width:600px){.hero .hero-button{padding:14px 18px;gap:25px}.principle-divider{height:15px}.principles-strip{gap:12px}}

.hero-location{display:flex;align-items:center;gap:10px}.hero-location svg{display:block;flex-shrink:0;opacity:.85}
@media(max-width:600px){.hero-content{padding-top:145px}.hero-location{gap:9px}.hero-location svg{width:12px;height:15px}}
