:root{--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color-scheme:light;--ink: #17202a;--ink-2: #243142;--paper: #fbf7ef;--paper-2: #fffdf8;--mist: #e8eef2;--blue: #587184;--blue-dark: #2c475b;--clay: #c9784c;--cream: #f2dfbc;--line: rgb(23 32 42 / 13%);--shadow: 0 24px 70px rgb(23 32 42 / 14%)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}a,button{min-height:44px}img{display:block;max-width:100%;height:auto}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ts-logo,.brand-mark{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff;font-weight:950;letter-spacing:-.08em;box-shadow:0 18px 35px #2c475b38}.gate{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:1.25rem;background:radial-gradient(circle at 14% 8%,rgb(201 120 76 / 25%),transparent 29%),radial-gradient(circle at 88% 18%,rgb(88 113 132 / 24%),transparent 28%),linear-gradient(145deg,#17202a,#263446 55%,#3d5362)}.gate.flex{display:flex}.gate-card{width:min(100%,27rem);border:1px solid rgb(255 255 255 / 17%);border-radius:30px;background:#17202ae0;box-shadow:0 30px 90px #0000006b;padding:1.35rem;color:#fff;backdrop-filter:blur(16px)}.gate-card h1{margin:1rem 0 .45rem;font-size:clamp(1.9rem,8vw,3rem);line-height:.96;letter-spacing:-.065em}.gate-card p{color:#dce6ed;line-height:1.55}.gate-card input{width:100%;min-height:54px;margin:.85rem 0;border:1px solid rgb(255 255 255 / 22%);border-radius:17px;background:#0c131b;color:#fff;padding:0 1rem;font-size:1.05rem}.gate-card button{width:100%;min-height:54px;border:0;border-radius:17px;background:var(--cream);color:var(--ink);font-weight:950}.ram-site{min-height:100vh;overflow-x:clip;background:radial-gradient(circle at 88% 5%,rgb(201 120 76 / 18%),transparent 22rem),radial-gradient(circle at 8% 16%,rgb(88 113 132 / 18%),transparent 24rem),linear-gradient(180deg,#fbf7ef 0% 42%,#e7edf1 42% 100%)}.section-pad{padding:3.4rem 1rem}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid var(--line);background:#fbf7efdb;backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:.7rem;min-width:0}.brand strong{display:block;max-width:11rem;font-size:.98rem;line-height:1}.brand small{display:block;margin-top:.2rem;color:var(--blue-dark);font-size:.76rem}.nav-links{display:none}.header-email{display:inline-flex;align-items:center;justify-content:center;min-width:max-content;border-radius:999px;background:var(--ink);color:#fff;padding:0 .9rem;font-weight:900;box-shadow:0 12px 28px #17202a2b}.hero{display:grid;gap:2rem;align-items:center;max-width:1180px;margin:0 auto;padding-top:2.6rem}.eyebrow{margin:0 0 .75rem;color:var(--clay);font-size:.78rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.eyebrow.dark{color:var(--blue-dark)}.hero h1,.section-heading h2,.intro-band h2,.visual-copy h2,.contact-card h2{margin:0;color:var(--ink);letter-spacing:-.065em;line-height:.95}.hero h1{font-size:clamp(3.05rem,15vw,6.7rem);max-width:790px}.lead{max-width:650px;color:#405165;font-size:clamp(1.08rem,4.7vw,1.35rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.35rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.9rem 1.05rem;font-weight:950;line-height:1}.btn.primary{background:var(--blue-dark);color:#fff;box-shadow:0 18px 35px #2c475b33}.btn.secondary{border:1px solid var(--line);background:#ffffff9e;color:var(--ink)}.phone-note{max-width:560px;margin:1rem 0 0;color:#657486;font-size:.95rem;line-height:1.45}.fact-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.2rem}.fact-row span{display:inline-flex;align-items:center;min-height:42px;border:1px solid var(--line);border-radius:999px;background:#ffffffb8;padding:0 .82rem;color:#344558;font-weight:850}.hero-art{display:grid;gap:1rem}.paint-board{position:relative;min-height:310px;overflow:hidden;border:1px solid var(--line);border-radius:34px;background:linear-gradient(135deg,#ffffffb3,#e8eef2d6),repeating-linear-gradient(90deg,transparent 0 34px,rgb(23 32 42 / 5%) 34px 35px);box-shadow:var(--shadow)}.roller-line{position:absolute;left:10%;right:10%;height:46px;border-radius:999px;transform:rotate(-7deg)}.roller-line.one{top:55px;background:var(--cream)}.roller-line.two{top:122px;background:#ccd8df}.roller-line.three{top:190px;background:#d89972}.sample-card{position:absolute;display:grid;gap:.2rem;min-width:130px;border:1px solid rgb(255 255 255 / 58%);border-radius:22px;padding:1rem;box-shadow:0 18px 34px #17202a24}.sample-card small{color:#66788b;font-weight:850}.sample-card strong{font-size:1.05rem}.sample-card.light{left:1rem;bottom:1rem;background:#fffdf8}.sample-card.blue{right:1rem;bottom:3rem;background:#dce8ee}.profile-photo{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.profile-photo img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.profile-photo figcaption{padding:.85rem 1rem 1rem;color:#657486;font-size:.9rem;line-height:1.4}.intro-band,.visual-proof,.contact{display:grid;gap:1.25rem;max-width:1180px;margin:0 auto}.intro-band{align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.intro-band h2,.visual-copy h2,.contact-card h2,.section-heading h2{font-size:clamp(2rem,9vw,4.35rem)}.intro-band p:last-child,.section-heading p,.visual-copy p,.contact-card p{color:#405165;font-size:clamp(1rem,3.7vw,1.2rem);line-height:1.6}.services,.areas{max-width:1180px;margin:0 auto}.section-heading{max-width:760px;margin-bottom:1.45rem}.service-grid{display:grid;grid-template-columns:1fr;gap:.85rem}.service-card{min-height:205px;border:1px solid var(--line);border-radius:28px;background:#fffdf8c7;padding:1.1rem;box-shadow:0 16px 40px #17202a14}.service-card span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--mist);color:var(--blue-dark);font-weight:950}.service-card h3{margin:1.1rem 0 .5rem;font-size:1.45rem;letter-spacing:-.045em}.service-card p{margin:0;color:#526579;line-height:1.55}.visual-proof{align-items:center}.paint-swatch-stack{display:grid;gap:.85rem}.swatch{display:flex;align-items:end;min-height:118px;border:1px solid var(--line);border-radius:30px;padding:1rem;color:#fff;font-weight:950;box-shadow:var(--shadow)}.swatch.warm{background:linear-gradient(135deg,#c9784c,#e4b574)}.swatch.cool{background:linear-gradient(135deg,#2c475b,#7fa1b4)}.swatch.neutral{background:linear-gradient(135deg,#17202a,#657486)}.area-grid{display:flex;flex-wrap:wrap;gap:.65rem}.area-grid span{min-height:44px;display:inline-flex;align-items:center;border-radius:999px;background:#fffdf8;border:1px solid var(--line);padding:0 .9rem;color:#344558;font-weight:850}.contact{align-items:stretch;padding-bottom:4.5rem}.contact-card,.contact-details{border-radius:34px;border:1px solid rgb(255 255 255 / 18%);background:var(--ink);color:#fff;padding:1.25rem;box-shadow:0 30px 80px #17202a2e}.contact-card .eyebrow{color:var(--cream)}.contact-card h2{color:#fff}.contact-card p{color:#d5dee5}.contact-card .btn.primary{width:100%;background:var(--cream);color:var(--ink)}.contact-details{background:#fffdf8;color:var(--ink)}.contact-details h3{margin:0 0 1rem;font-size:1.45rem}dl{display:grid;gap:.9rem;margin:0}dt{color:#657486;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}dd{margin:.18rem 0 0;font-weight:850;overflow-wrap:anywhere}@media(min-width:740px){.section-pad{padding:5.5rem 2rem}.site-header{padding:.85rem 2rem}.nav-links{display:flex;align-items:center;gap:.95rem;color:#405165;font-weight:850}.hero{grid-template-columns:minmax(0,1.05fr) minmax(330px,.85fr);padding-top:4.5rem}.intro-band,.visual-proof,.contact{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:repeat(3,1fr)}.contact-card,.contact-details{padding:1.6rem}}@media(min-width:1080px){.brand strong{max-width:none}.hero h1{font-size:6.9rem}.service-card{min-height:230px}}
