@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;font:16px/1.65 'DM Sans',sans-serif;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(52px,7.3vw,110px);line-height:1.01;letter-spacing:-.055em;font-weight:500;margin-bottom:28px}h2{font-size:clamp(34px,4.2vw,62px);line-height:1.12;letter-spacing:-.04em;font-weight:500}h3{font-size:23px;line-height:1.3;font-weight:500}p{max-width:620px}.wrap{width:min(1320px,calc(100% - 96px));margin:auto}.studio{background:#172335;color:#fff;padding:9px 24px;display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.04em}.studio a{text-decoration:underline;text-underline-offset:3px}nav{min-height:104px;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{font:800 25px 'Manrope',sans-serif;letter-spacing:-1.2px}.brand small{font-size:9px;display:block;letter-spacing:3px;text-transform:uppercase}.navlinks{display:flex;align-items:center;gap:30px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--accent);color:var(--buttonink);border:1px solid var(--accent);padding:16px 25px;font-weight:600;font-size:14px;border-radius:var(--radius,0);text-decoration:none}.button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}.kicker{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:24px}.hero{position:relative}.hero p{font-size:17px;max-width:470px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.section{padding:100px 0}.sectiontop{display:flex;justify-content:space-between;gap:50px;align-items:start;margin-bottom:38px}.sectiontop h2{max-width:680px}.sectiontop p{max-width:330px;font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:35px;border:1px solid var(--line);border-radius:var(--radius,0)}.card .num{display:block;font-size:12px;margin-bottom:45px;color:var(--muted)}.card p{font-size:14px;color:var(--muted)}.link{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-block}.strip{display:flex;justify-content:space-between;gap:25px;padding:25px 0;border-bottom:1px solid var(--line);font-size:12px}.banner{background:var(--ink);color:var(--paper);padding:65px;display:flex;justify-content:space-between;gap:40px;align-items:center}.banner h2{margin:0;max-width:700px}.foot{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:35px 0;margin-top:90px;font-size:12px}.foot p{max-width:560px;color:var(--muted)}.detailhero{padding:65px 0 55px}.detailhero h1{max-width:1000px;font-size:clamp(48px,6vw,86px)}.detailphoto{height:450px}.facts{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding:70px 0;border-bottom:1px solid var(--line)}.facts p{color:var(--muted)}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:18px}details p{padding-top:15px;font-size:14px}.planner{padding:50px;background:var(--soft);border:1px solid var(--line);margin-top:40px}.planner h2{font-size:40px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}label{display:block;font-size:12px;font-weight:700}select,input{width:100%;margin-top:8px;padding:14px;background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:var(--radius,0)}.result{padding:24px;border-left:3px solid var(--accent);background:var(--paper);margin-top:25px}.result:empty{display:none}.fine{font-size:12px!important;color:var(--muted);max-width:750px}.roof{--paper:#f3f2ed;--ink:#172723;--accent:#e9ff62;--buttonink:#172723;--soft:#e6e8df;--line:#cbd1c9;--muted:#607067;font-family:'Manrope',sans-serif}.roof .hero{background:#172723;color:white;min-height:700px;padding:72px 0 45px;overflow:hidden}.roof .hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10231eea,#10231e55 55%,#10231e00),url('assets/roof.webp') center/cover}.roof .herocopy{position:relative;max-width:800px}.roof h1{text-transform:uppercase;font-weight:800;letter-spacing:-.065em}.roof .hero p{color:#e0e8df}.roof .herobottom{position:relative;display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:75px;font-size:11px}.roof .stamp{border:1px solid #ffffff80;padding:18px;width:190px}.medical{--paper:#f7f5ef;--ink:#203f38;--accent:#295d4c;--buttonink:white;--soft:#e8eee5;--line:#cbd5cb;--muted:#65796f;--radius:40px}.medical h1,.medical h2,.medical h3{font-family:'Playfair Display',serif;letter-spacing:-.04em}.medical .brand{font-family:'Playfair Display',serif;font-weight:400;font-size:30px}.medical .hero{padding:55px 0 70px}.medical .hero .split{gap:55px;grid-template-columns:1.05fr 1fr}.medical .hero img{height:630px;border-radius:230px 230px 20px 20px}.medical h1{font-size:clamp(54px,6.2vw,88px)}.medical .card{border-radius:16px;background:#eff1e8}.medical .strip{justify-content:space-around;background:var(--soft);border-radius:50px}.medical .detailphoto{border-radius:24px}.law{--paper:#f0eee8;--ink:#202b2d;--accent:#c3a574;--buttonink:#1c2729;--soft:#e6e3da;--line:#c4c5be;--muted:#657073}.law .brand{font-family:'Playfair Display',serif;font-weight:400;letter-spacing:1px}.law h1,.law h2,.law h3{font-family:'Playfair Display',serif}.law .hero{background:#202b2d;color:#f0eee8}.law .hero .split{gap:0;grid-template-columns:1.1fr 1fr}.law .herocopy{padding:70px 65px 65px 0}.law h1{font-size:clamp(55px,6.1vw,91px)}.law .hero img{height:700px}.law .hero p{color:#c5ccc8}.law .card{border-width:1px 0 0;padding-left:0}.law .num{color:#927444}.shop{--paper:#f6f1e9;--ink:#513b30;--accent:#7a4331;--buttonink:#fff8ee;--soft:#ece3d6;--line:#d3c5b4;--muted:#8a7768}.shop h1,.shop h2,.shop h3{font-family:'Playfair Display',serif}.shop .brand{font:500 30px 'Playfair Display',serif;letter-spacing:5px}.shop .hero{background:var(--soft)}.shop .hero .split{gap:0}.shop .herocopy{padding:65px 55px 65px 0}.shop h1{font-size:clamp(56px,6vw,88px)}.shop .hero img{height:660px}.product-image{display:block;height:340px;background:var(--soft);overflow:hidden}.product-image img{height:100%;transition:transform .6s}.product-image:hover img{transform:scale(1.04)}.product-info{display:flex;justify-content:space-between;padding:20px 0;gap:15px}.product-info h3{font-size:20px;margin-bottom:5px}.product-info p{font-size:12px;color:var(--muted)}.product-feature img{height:650px}.product-feature{padding:60px 0}.swatches{display:flex;gap:10px;margin:20px 0}.swatches button{border:1px solid var(--line);background:transparent;padding:9px 16px;color:var(--ink)}.swatches button[aria-pressed=true]{border:2px solid var(--accent);padding:8px 15px}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:35px;width:min(570px,calc(100% - 28px));max-height:85vh}dialog::backdrop{background:#17272399}.dialogtop{display:flex;justify-content:space-between;gap:30px}.close{background:transparent;border:0;font-size:24px;color:var(--ink)}.cartrow{border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:1fr auto;gap:10px}.cartrow button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:5px 12px}.carttotal{font-size:23px;margin:25px 0}.gallery{--paper:#f6f5f0;--ink:#18263a;--accent:#294bea;--buttonink:white;--soft:#eceee8;--line:#d3d7db;--muted:#637080}.gallery h1,.gallery h2{font-family:'Playfair Display',serif}.gallery .intro{padding:75px 0 60px;max-width:950px}.gallery .intro h1{font-size:clamp(55px,7vw,95px)}.gallerygrid{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px}.gallerycard{display:block}.gallerycard img{height:360px}.gallerycard .caption{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.gallerycard h2{font-size:30px;margin:6px 0}.gallerycard p{font-size:13px;color:var(--muted)}.gallerycard:hover img{filter:brightness(.94)}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.navlinks{gap:16px}.split{gap:35px}.grid{gap:15px}.card{padding:25px}.section{padding:70px 0}.law .herocopy,.shop .herocopy{padding-right:30px}.roof .hero{min-height:650px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.studio{font-size:9px;padding:9px 18px}.studio span{max-width:220px}nav{min-height:90px;flex-wrap:wrap;padding:20px 0;gap:15px}.brand{font-size:23px}.navlinks{width:100%;justify-content:space-between;gap:12px;font-size:11px}.navlinks .button{padding:9px 14px;font-size:11px}.split,.medical .hero .split,.law .hero .split,.shop .hero .split,.facts{grid-template-columns:1fr;gap:30px}.grid{grid-template-columns:1fr}.sectiontop{display:block;margin-bottom:25px}.sectiontop p{max-width:none}.roof .hero{padding:55px 0 35px;min-height:690px}.roof .hero:before{background:linear-gradient(#10231ebd,#10231e66),url('assets/roof.webp') center/cover}.roof h1{font-size:59px}.herobottom{margin-top:65px!important}.medical .hero{padding:30px 0}.medical .hero img{height:390px;border-radius:170px 170px 16px 16px}.medical .strip{border-radius:12px;flex-wrap:wrap;padding:20px}.law .hero .herocopy,.shop .hero .herocopy{padding:45px 0 0}.law .hero img,.shop .hero img{height:380px}.law .hero .split,.shop .hero .split{gap:35px}.law .hero .wrap,.shop .hero .wrap{padding-bottom:18px}.banner{padding:38px 25px;display:block}.banner .button{margin-top:25px}.foot{display:block;margin-top:60px}.fields{grid-template-columns:1fr}.planner{padding:26px}.planner h2{font-size:34px}.facts{padding:45px 0}.detailphoto{height:290px}.product-feature img{height:400px}.gallerygrid{grid-template-columns:1fr;gap:40px}.gallerycard img{height:290px}.gallery .intro{padding:45px 0}.product-image{display:block;height:380px}.strip{flex-wrap:wrap}.section{padding:55px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}/* The second chapter: editorial imagery and sector-specific detail. */
.card.enriched{padding:0;overflow:hidden}.card.enriched>img{height:230px;aspect-ratio:1.5;object-fit:cover}.card.enriched .num{margin:26px 28px 24px}.card.enriched h3,.card.enriched p,.card.enriched .link{margin-left:28px;margin-right:28px}.card.enriched .link{margin-bottom:30px}.law .card.enriched{border:0;background:#e8e5dd}.law .card.enriched>img{height:280px}.story-section{padding:85px 0;background:var(--soft)}.story-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center}.story-grid.reverse{grid-template-columns:1fr 1.15fr}.story-grid.reverse figure{order:2}.story-grid figure{margin:0}.story-grid figure>img{height:540px;object-fit:cover}.story-grid figcaption{font-size:9px;letter-spacing:1px;text-transform:uppercase;margin-top:12px;color:var(--muted)}.story-copy p:not(.kicker){color:var(--muted);font-size:16px}.story-copy .link{margin-top:18px}.medical .story-grid figure>img{border-radius:180px 180px 18px 18px}.medical .story-grid.reverse figure>img{border-radius:18px}.visual-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.visual-card-grid article{border:1px solid var(--line)}.visual-card-grid img{height:370px}.visual-card-grid article>div{padding:35px}.visual-card-grid p:not(.kicker){font-size:14px;color:var(--muted)}.journey{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);gap:28px;padding-top:30px}.journey article>span{display:block;color:var(--accent);font-size:45px;line-height:1;margin-bottom:30px;font-family:'Playfair Display',serif}.roof .journey article>span{color:#4f6b2c}.journey h3{font-size:21px}.journey p{font-size:13px;color:var(--muted)}.image-band{position:relative;min-height:600px;display:flex;align-items:center;color:white;overflow:hidden}.image-band>img{position:absolute;inset:0;height:100%;width:100%}.image-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10231ed9,#10231e00)}.image-band .wrap{position:relative;z-index:1;padding-top:70px;padding-bottom:70px}.image-band h2{font-size:clamp(46px,6vw,85px);max-width:800px}.shop-band:after{background:linear-gradient(90deg,#3f291cc9,#3f291c00)}.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.faq-section details p{color:var(--muted);max-width:600px}.care-menu{border-top:1px solid var(--line)}.care-menu article{display:grid;grid-template-columns:70px 1fr 50px;gap:20px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.care-menu article>span{font-family:'Playfair Display',serif;font-size:30px;color:var(--muted)}.care-menu h3{font-size:29px;margin-bottom:10px}.care-menu p{color:var(--muted);font-size:14px;margin-bottom:0}.care-menu a{border:1px solid var(--line);border-radius:50%;width:45px;height:45px;display:grid;place-items:center}.practice-list{border-top:1px solid var(--line)}.practice-list>a{display:grid;grid-template-columns:50px 1.1fr 1fr 40px;gap:25px;padding:33px 0;border-bottom:1px solid var(--line);align-items:start}.practice-list h3{font-size:29px;margin:0}.practice-list p{font-size:14px;color:var(--muted);margin:0}.practice-list span{font-size:12px;color:#927444}.practice-list b{font-size:22px;font-weight:400}.practice-list a:hover h3{text-decoration:underline;text-underline-offset:6px}.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.material-grid article{border-top:1px solid var(--line);padding-top:25px}.material-grid span{font-size:10px;letter-spacing:2px}.material-grid h3{font-size:30px;margin:30px 0 20px}.material-grid p{color:var(--muted);font-size:14px}.inner-editorial{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;background:var(--soft);margin:65px 0;padding:35px}.inner-editorial>img{height:450px}.inner-editorial h2{font-size:43px}.inner-editorial h3{font-size:21px}.inner-editorial p:not(.kicker){font-size:14px;color:var(--muted)}.medical .inner-editorial{border-radius:20px}.medical .inner-editorial img{border-radius:14px}.shop .product-image{background:#eae0d2}.shop .product-image img{object-fit:cover;object-position:center!important}.shop .product-feature>div>img{object-fit:cover}.law .story-section{background:#202b2d;color:#f0eee8}.law .story-copy p:not(.kicker),.law .story-grid figcaption{color:#bdc6c1}.law .story-copy .kicker{color:#c3a574}.law .story-copy h2{font-size:clamp(38px,4.1vw,60px)}@media(max-width:950px){.story-grid,.story-grid.reverse{gap:40px}.story-grid figure>img{height:440px}.journey{grid-template-columns:1fr 1fr;gap:35px}.faq-section{gap:40px}.inner-editorial{gap:30px;padding:25px}.inner-editorial h2{font-size:35px}.practice-list>a{grid-template-columns:30px 1fr 1fr 25px;gap:15px}}@media(max-width:650px){.story-section{padding:50px 0}.story-grid,.story-grid.reverse{grid-template-columns:1fr;gap:30px}.story-grid.reverse figure{order:0}.story-grid figure>img{height:350px}.medical .story-grid figure>img{border-radius:130px 130px 16px 16px}.visual-card-grid{grid-template-columns:1fr;gap:25px}.visual-card-grid img{height:290px}.visual-card-grid article>div{padding:25px}.journey{gap:28px 20px}.journey article>span{font-size:35px;margin-bottom:20px}.journey h3{font-size:19px}.journey p{font-size:12px}.image-band{min-height:500px}.image-band h2{font-size:48px}.faq-section{grid-template-columns:1fr;gap:20px}.care-menu article{grid-template-columns:35px 1fr 35px;gap:12px}.care-menu h3{font-size:25px}.care-menu a{width:34px;height:34px}.practice-list>a{grid-template-columns:28px 1fr 25px;padding:25px 0}.practice-list p{grid-column:2;grid-row:2}.practice-list b{grid-column:3;grid-row:1}.practice-list h3{font-size:26px}.material-grid{grid-template-columns:1fr;gap:30px}.material-grid h3{margin:20px 0 15px}.inner-editorial{grid-template-columns:1fr;padding:20px;gap:25px;margin:40px 0}.inner-editorial>img{height:300px}.inner-editorial h2{font-size:35px}.card.enriched>img,.law .card.enriched>img{height:250px}}
.reveal{transition:opacity .65s ease,transform .65s ease}.reveal:not(.in-view){opacity:.15;transform:translateY(18px)}.reveal.in-view{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal:not(.in-view){opacity:1;transform:none}}
