*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#2c382f;background:#fffefa;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.95}a{color:inherit;text-decoration:none}a:hover{color:#986a34}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b18b49;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;line-height:1.6;letter-spacing:.08em}h1{font-size:clamp(2.5rem,4.5vw,4.8rem)}h2{font-size:clamp(1.8rem,2.8vw,2.8rem)}h3{font-size:1.22rem;font-weight:500;line-height:1.8}p{max-width:65ch}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 5%;border-bottom:1px solid #e4e4d9;background:#fffefa}.brand{font-family:"Yu Mincho",serif;font-size:1.5rem;line-height:1.5;white-space:nowrap}.brand b{font-weight:500;letter-spacing:.07em;font-size:1.85rem}.brand-small{display:block;font-family:sans-serif;font-size:.75rem;letter-spacing:.12em;margin-bottom:5px}nav{display:flex;gap:26px;align-items:center;font-size:.875rem}nav a[aria-current=page]{border-bottom:1px solid #6d775c}.nav-contact{padding:10px 18px;border:1px solid #536047}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.15fr 1fr;min-height:720px;padding:70px 7% 70px;gap:5%}.eyebrow{display:block;font-size:.75rem;letter-spacing:.2em;line-height:1.6;margin-bottom:22px;font-weight:600;color:#6a775e}.hero h1{margin-bottom:25px}.hero em{font-style:normal;color:#738060}.hero p{font-size:.94rem}.hero-note{position:relative;background:#eee8d9;border-radius:180px 180px 0 0;display:flex;align-items:center;justify-content:center;min-height:570px}.vertical-label{position:absolute;writing-mode:vertical-rl;right:22px;top:130px;font-size:.75rem;letter-spacing:.25em}.note-inner{padding:40px 20px;text-align:center}.note-inner img{border-radius:50%;object-fit:cover;margin-bottom:23px;box-shadow:0 0 0 9px #f6f2e9}.note-inner .eyebrow{margin-bottom:15px}.note-inner h2{font-size:2rem;margin-bottom:15px}.note-inner p{font-size:.875rem}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:35px}.button{display:inline-block;background:#3c503e;color:white;padding:15px 29px;font-size:.9375rem;letter-spacing:.05em;border:1px solid #3c503e;text-align:center}.button:hover{background:#526746;color:white}.text-link{display:inline-block;font-size:.9375rem;padding:6px 0;border-bottom:1px solid #7d896b}.intro-line{display:flex;justify-content:space-between;gap:25px;padding:22px 7%;border-top:1px solid #e2e1d6;border-bottom:1px solid #e2e1d6;font-size:.875rem}.intro-line span{font-size:.75rem;letter-spacing:.13em;align-self:center}.intro-line p{margin:0}.section{padding:95px 8%}.section-title{margin-bottom:36px}.section-title h2{margin:0}.lead{font-size:1.125rem;line-height:2.15}.cream{background:#f3f0e7}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:45px 0}.service-grid article{border-top:1px solid #aab29b;padding-top:20px}.number{font-family:Georgia,serif;font-size:1.25rem;color:#8c927d;letter-spacing:.05em;display:block;margin-bottom:15px}.service-grid p{font-size:.9375rem}.featured-work,.work-list{display:grid;grid-template-columns:.75fr 1fr;gap:60px;align-items:center}.work-number{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#dedbcf;color:#59694c}.work-number strong{font-family:Georgia,serif;font-size:7rem;font-weight:400;line-height:1.4}.work-number span{font-size:.75rem;letter-spacing:.16em}.featured-work h3{font-family:"Yu Mincho",serif;font-size:1.75rem;line-height:1.8;margin:15px 0}.tag{font-size:.8125rem;color:#72785e}.story{display:grid;grid-template-columns:1fr 1fr;gap:70px}.flow{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;gap:32px}.flow li{border-top:1px solid #a9af9c;padding-top:20px}.flow p{font-size:.9375rem}.glass-teaser{display:flex;align-items:center;justify-content:space-between;gap:30px}.glass-word{font-family:Georgia,serif;line-height:1.2;font-size:clamp(3rem,7vw,7rem);color:#c4b88f;letter-spacing:.05em}.contact-band{background:#3c503e;color:#fffefa;padding:70px 8%;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-band .eyebrow{color:#d0d8c4}.contact-band h2{margin-bottom:20px}.contact-band p{font-size:.9375rem;margin:0}.light{background:#fffefa;color:#3c503e;border-color:#fffefa}.light:hover{background:#e4e7db;color:#3c503e}footer{padding:65px 8% 25px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.footer-brand p{font-size:.875rem;margin-top:20px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.875rem;align-content:start}footer small{grid-column:1/-1;font-size:.75rem;color:#777f70;margin-top:30px}.page-title{padding:75px 8% 60px;background:#f3f0e7}.page-title h1{font-size:clamp(2.4rem,4vw,4rem);margin-bottom:25px}.page-title p{margin-bottom:0}.prose{max-width:1000px;margin:0 auto}.prose h2{font-size:1.75rem;margin-top:55px}.prose p{max-width:none}.facts{margin:45px 0}.facts>div{display:grid;grid-template-columns:160px 1fr;gap:20px;border-bottom:1px solid #d6dacc;padding:20px 0}.facts dt{color:#6f795f}.facts dd{margin:0}.small-photo{display:flex;align-items:center;gap:30px;margin:45px 0}.small-photo img{flex-shrink:0;object-fit:cover}.small-photo p{font-size:.9375rem;margin-bottom:0}.timeline{list-style:none;padding:0}.timeline li{display:grid;grid-template-columns:180px 1fr;gap:25px;padding:23px 0;border-bottom:1px solid #d6dacc}.timeline b{font-weight:500;color:#687a55}.muted{color:#68715f;font-size:.875rem}.faq{max-width:850px}.faq details{border-bottom:1px solid #cbd1c2;padding:23px 0}.faq summary{cursor:pointer;font-size:1rem;padding-right:20px}.faq details p{padding:18px 0 0 20px;margin-bottom:0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.phone-card{background:#f3f0e7;padding:45px 30px}.phone{font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.5rem);white-space:nowrap}.check-list{padding-left:20px}.check-list li{padding:8px 0}.skip{position:absolute;top:-100px;padding:12px;background:#fff;z-index:20}.skip:focus{top:0}@media(max-width:1050px){nav{gap:15px;font-size:.8125rem}.site-header{padding-left:4%;padding-right:4%}.brand{font-size:1.2rem}.brand b{font-size:1.55rem}.hero{padding-left:6%;padding-right:6%}.flow{grid-template-columns:1fr 1fr}}@media(max-width:780px){.site-header{padding:18px 6%;flex-wrap:wrap}.menu-toggle{display:block;border:1px solid #a6ae99;background:none;color:#3c503e;padding:9px 13px;font-size:.875rem}.site-header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.site-header nav.is-open{display:flex}.site-header nav a{padding:13px 0;border-bottom:1px solid #dadfd2}.site-header nav .nav-contact{padding:12px;text-align:center;margin-top:10px}.hero{display:block;padding:45px 7%}.hero h1{font-size:2.9rem}.hero-note{margin-top:40px;min-height:480px;border-radius:145px 145px 0 0}.hero-copy p br{display:none}.intro-line{display:block}.intro-line p{margin-top:9px}.section{padding:65px 7%}.service-grid{grid-template-columns:1fr;gap:22px}.service-grid article{padding-top:15px}.service-grid article .number{margin-bottom:8px}.featured-work,.work-list,.story,.contact-layout{grid-template-columns:1fr;gap:28px}.work-number{min-height:220px}.work-number strong{font-size:5rem}.flow{grid-template-columns:1fr;gap:18px}.flow li{display:grid;grid-template-columns:38px 1fr;column-gap:15px}.flow h3{margin-bottom:8px}.flow p{grid-column:2;margin:0}.glass-teaser{display:block}.glass-word{margin-top:35px;font-size:3.5rem}.contact-band{padding:55px 7%;display:block}.contact-band .button{margin-top:28px}footer{grid-template-columns:1fr;padding:45px 7% 22px}.footer-links{margin-top:10px}.page-title{padding:50px 7%}.page-title h1{font-size:2.5rem}.facts>div{grid-template-columns:1fr;gap:5px}.timeline li{grid-template-columns:1fr;gap:7px}.small-photo{gap:20px;align-items:flex-start}.small-photo img{width:110px;height:110px}.small-photo h3{font-size:1rem}.phone-card{padding:30px 20px}.actions{gap:18px}.button{padding:13px 23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}