/* Lodos Atelier: warm paper, botanical photography and editorial typography. */
:root {
  --forest:#214e4c; --dark:#183e3c; --ink:#253e38; --paper:#fbf9f3;
  --muted:#687269; --line:#dcded2; --lime:#e3e9d8; --sand:#ede8db;
  --display:Georgia,'Times New Roman',serif;
}
body{background:var(--paper)}
h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:-.045em}
h2{line-height:1.12;font-size:clamp(40px,4.4vw,68px)}
.section{padding:108px max(6vw,24px)}
.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;color:#6e775d}
.topline{height:31px;background:#e8eadf;color:#546457;font-size:9px}
.topline a{font-size:11px}
.site-header{height:112px;background:#fbf9f3;border-bottom:1px solid #e7e4d9;padding:0 6%;gap:30px}
.brand{width:170px;height:104px;overflow:hidden;justify-content:center;flex-shrink:0}
.brand .brand-mark{width:165px;height:165px;max-width:none;object-fit:contain;mix-blend-mode:multiply;flex-shrink:0;filter:brightness(1.045)}
.site-header nav{gap:29px;font-size:11px}
.site-header nav a:hover{color:#8d6c45}
.site-header nav .nav-cta{background:transparent;border:1px solid #bbc8bb;border-radius:40px;padding:13px 21px;gap:22px}
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:750px;overflow:hidden;background:#b6c2a4;color:var(--ink)}
.hero-visual{position:absolute;inset:0;min-height:0;z-index:-2}
.hero-visual>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#213a3026,transparent 60%);pointer-events:none}
.hero-copy{display:block;position:relative;align-self:center;width:48%;max-width:620px;margin:58px 0 58px 6%;padding:49px 44px 26px;background:#fbf9f3f5;border:1px solid #ffffff90;box-shadow:0 18px 70px #162d2014;z-index:1}
.hero-copy::before{content:'';display:block;width:45px;height:3px;background:#a48b5b;margin-bottom:23px}
.hero .eyebrow{color:#66745b;font-size:9px;letter-spacing:.15em;margin-bottom:28px}
.hero h1{font-family:var(--display);font-size:clamp(46px,4.8vw,70px);font-weight:400;line-height:1.045;width:100%;white-space:pre-line;letter-spacing:-.055em}
.hero-description{font-size:13px;line-height:1.9;color:#657167;margin:26px 0;max-width:390px}
.hero-actions{gap:20px;margin:0;align-items:center}
.button{border-radius:0;padding:16px 22px;letter-spacing:.025em;font-size:11px;background:var(--forest);color:#fff}
.button.lime{background:var(--forest);color:#fff;border-color:var(--forest)}
.button.lime:hover,.button:hover{background:#365e54;color:#fff}
.text-link{font-size:11px;letter-spacing:.015em;gap:26px;border-color:#aeb8a2}
.text-link.light{font-size:10px;color:var(--ink);border:0;gap:12px}
.hero-bottom{margin-top:35px;padding-top:20px;border-top:1px solid #d9decf;color:#69745f;font-size:7px;letter-spacing:.11em;gap:10px}
.sun-icon{font-size:25px;color:#a08a58}
.hero-bottom>span:last-child{font-size:7px;letter-spacing:.07em}
.hero .image-label{left:auto;right:28px;bottom:26px;background:#fbf9f3e6;font-size:8px;border-radius:0}
.vertical-note{right:25px;top:28px;color:#fff;font-size:8px}
.scroll-note{left:auto;right:35px;bottom:88px;transform:none;width:44px;height:44px;border-radius:50%;background:#fbf9f3e8;color:var(--forest);font-size:20px}
.ribbon{padding:23px 6%;background:#e9ecdf;border-bottom:0;letter-spacing:.24em;font-size:9px;color:#5d6f54}
.ribbon i{font-size:16px;color:#9ba789}
.intro{padding-top:115px;padding-bottom:95px}
.intro .eyebrow{border:0;padding-bottom:0;margin-bottom:35px}
.intro-grid{grid-template-columns:1.25fr 1fr;gap:12%}
.intro-grid h2{font-family:var(--display);font-size:clamp(40px,4.2vw,66px);max-width:650px}
.intro-grid>div{padding-top:8px}
.large-copy{font-size:14px;line-height:1.95;color:#667266}
.intro .small-note{margin-top:28px;font-size:9px}
.section-number{font-family:var(--display);font-size:20px;letter-spacing:-.03em;font-style:italic;color:#a3ac94}
.services-section{background:#f0f1e8;padding-top:85px;padding-bottom:90px}
.section-heading{margin-bottom:46px}
.section-heading h2{font-size:clamp(40px,4.3vw,66px)}
.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #d5dccb}
.service-row{position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:0;min-height:238px;padding:30px 30px 27px;border:0;border-right:1px solid #d5dccb;border-bottom:1px solid #d5dccb;background:#f8f8f0;transition:background .25s}
.service-row:nth-child(3n){border-right:0}.service-row:nth-last-child(-n+3){border-bottom:0}
.service-row:hover{padding-left:30px;background:#e7ecdc}
.service-no{padding:0;margin-bottom:26px;font-family:var(--display);font-style:italic;font-size:17px;color:#91a080}
.service-row h3,.service-row h2{font-family:var(--display);font-size:29px;line-height:1.12;margin-bottom:15px;letter-spacing:-.035em}
.service-row p{font-size:11px;line-height:1.85;max-width:85%;color:#737d6b}
.service-row .circle-arrow{position:absolute;right:24px;top:26px;width:32px;height:32px;border:0;background:#e8ecdf;color:#556c4a;font-size:19px}
.service-row:hover .circle-arrow{background:#365d50;color:#fff}
.projects-section{background:var(--paper);padding-top:110px}
.project-grid{grid-template-columns:1.18fr 1fr;gap:55px}
.project-grid .project-card:nth-child(2){padding-top:115px}
.image-wrap{aspect-ratio:.98;border-radius:160px 0 0 0}
.project-card:nth-child(2) .image-wrap{aspect-ratio:1.03;border-radius:0 0 150px 0}
.project-card h3,.project-card h2{font-size:32px;font-family:var(--display);line-height:1.15}
.image-label{font-size:8px;letter-spacing:.12em;background:#fbf9f3e8}
.card-meta{font-size:8px;letter-spacing:.15em;margin:22px 0 13px}
.round-link{width:41px;height:41px;background:#fbf9f3}
.projects-section>.small-note{max-width:530px;font-size:10px;margin-top:32px}
.process-section{position:relative;display:block;background:#e6ebe2;color:var(--ink);overflow:hidden}
.process-title{display:flex;align-items:start;justify-content:space-between;gap:40px;position:relative}
.process-title>.eyebrow{max-width:180px;padding-top:12px;color:#65755c}
.process-title h2{font-size:clamp(40px,4vw,62px);margin-right:15%;margin-bottom:55px}
.botanical{position:absolute;right:-25px;top:-40px;bottom:auto;margin:0;font-size:210px;opacity:.35;color:#b3c0a7}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.step,.step:first-child{display:block;border:0;border-top:1px solid #b9c6ae;padding:24px 0 0}
.step>span{display:block;margin:0 0 22px;color:#829372;font-family:var(--display);font-size:22px;font-style:italic}
.step h3{font-family:var(--display);font-size:27px;line-height:1.15;margin-bottom:15px}
.step p{font-size:11px;line-height:1.9;color:#697760;max-width:260px}
.region-section{grid-template-columns:.9fr 1.1fr;gap:11%;padding-top:115px;padding-bottom:100px}
.region-art{min-height:430px;border-radius:220px 220px 0 0;background:#ece9dd;border:0;color:#536c53}
.region-art>span{top:65px;left:45px;font-size:9px;color:#88917c}
.region-art strong{font-family:var(--display);font-size:53px;letter-spacing:.08em;font-style:italic;font-weight:400}
.region-art small{font-size:8px}
.contour{border-color:#c5ccb8}.region-section h2{font-size:clamp(38px,3.7vw,58px)}
.region-section p{font-size:13px;line-height:1.95}
.region-links{gap:9px}.region-links a{background:#f2f2e8;border:0;padding:8px 13px;font-size:10px;border-radius:30px}
.region-links a:hover{background:var(--forest);color:#fff}
.journal-section{background:#f1eee5;padding-top:85px;padding-bottom:90px}
.journal-grid{gap:55px}.journal-image{height:320px;border-radius:0}
.journal-grid h3{font-family:var(--display);font-size:31px;line-height:1.2;max-width:500px}
.journal-grid p{font-size:12px;line-height:1.85;max-width:440px}
.contact-section{background:#fbf9f3;gap:10%;border-top:0;padding-top:110px;padding-bottom:110px}
.contact-section h2{font-size:clamp(44px,4.6vw,71px)}
.contact-section p{font-size:13px}.contact-phone{font-family:var(--display);font-size:33px;margin:30px 0 20px;letter-spacing:-.03em}
.contact-form label{font-size:10px}.form-wrap{padding-top:10px}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{border-color:#bac3ad;padding:15px 0;font-size:12px}
.contact-form .button{margin-top:10px}.checkbox input{accent-color:var(--forest)}
.site-footer{background:#dedfd1;color:#344c3d;padding-top:35px}
.footer-top{padding-bottom:25px;border-color:#bdc5b1}
.footer-top .brand{width:180px;height:118px}.footer-top .brand .brand-mark{width:180px;height:180px}
.footer-motto{font-family:var(--display);font-size:34px;color:#466044}
.footer-grid{font-size:11px;padding:32px 0 38px}.footer-grid>div:first-child,.footer-bottom{color:#65715c}
.footer-bottom{border-color:#bdc5b1}.footer-word{font-family:var(--display);font-style:italic;font-size:25vw;font-weight:400;letter-spacing:-.08em;color:#a9b69a;line-height:.82;margin-top:30px}
.footer-word>span{font-family:var(--font);font-style:normal;font-size:13vw;line-height:1.05}
.footer-extra a{background:#d1d8c6}.floating-contact{background:#fffdf5;border-color:#c6cfba;color:#3c6251;box-shadow:0 5px 25px #334c3020}
.page-heading{background:#f1f1e7;padding-top:75px;padding-bottom:70px}
.page-heading h1,.detail-heading h1{font-family:var(--display);font-size:clamp(48px,6.4vw,98px);font-weight:400;line-height:1.03}
.page-heading p{font-size:15px}.heading-star{color:#a8b492}
.listing-section{padding-top:65px}.detail-heading{padding-bottom:55px}.detail-intro{font-size:18px;line-height:1.7}
.detail-image{height:540px;margin:0 6%;border-radius:160px 0 0 0}
.detail-body{padding-top:70px;padding-bottom:90px}.prose{font-size:16px;line-height:2;color:#536050}
.faq-list summary{font-family:var(--display);font-size:28px}.faq-list details p{color:#67745f;font-size:14px}
.editor-bar{background:#e4e8da;color:#284c3f;border-color:#b6c7a4}
.notice{background:#e9efdf;border-color:#b7c9a5;color:#385439}
dialog{background:#fbf9f3}.dialog-head h2{font-family:var(--display);font-size:30px}
@media(min-width:1600px){.hero{min-height:840px}.hero-copy{margin-top:65px;margin-bottom:65px;padding:55px 50px 30px}.hero h1{font-size:76px}.hero-description{font-size:14px}.hero-bottom{margin-top:40px}.hero-visual{min-height:0}}
@media(max-width:1100px){.hero{min-height:690px}.hero-copy{width:53%;padding:35px 30px 24px;margin-left:5%}.hero h1{font-size:56px}.hero-actions{gap:15px}.hero-bottom>span:last-child{display:none}.service-row{padding:25px 22px;min-height:250px}.service-row:hover{padding-left:22px}.service-row h3,.service-row h2{font-size:27px}.project-grid{gap:35px}.process-title h2{margin-right:10%}.steps{gap:22px}.step h3{font-size:24px}.journal-image{height:270px}.section{padding-left:5%;padding-right:5%}.site-header{padding-left:5%;padding-right:5%}}
@media(max-width:800px){
 .section{padding:70px 6%}.site-header{height:104px;padding:0 5%}.brand{width:155px;height:98px}.brand .brand-mark{width:155px;height:155px}.site-header nav{top:104px;background:#fbf9f3;border-bottom:1px solid #dce1d2}.site-header nav .nav-cta{margin-top:10px;justify-content:space-between}.menu-toggle{border-radius:50%;padding:17px 13px}.menu-toggle span{width:20px}
 .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible;background:#f1f1e7;padding-bottom:0}
 .hero-visual{position:relative;inset:auto;order:0;width:100%;height:450px;min-height:0;z-index:0;overflow:hidden}
 .hero-visual>img{object-position:center 58%}.hero-visual::after{display:none}.hero .image-label{right:20px;bottom:68px;font-size:7px}.vertical-note{top:24px;right:17px}
 .hero-copy{order:1;align-self:auto;max-width:none;width:calc(100% - 48px);margin:-48px 24px 30px;padding:38px 38px 25px;border:1px solid #e7e5d8;box-shadow:0 16px 28px #3e4e2c0a;background:#fbf9f3;z-index:2}
 .hero h1{font-size:clamp(49px,7.7vw,64px);width:100%}.hero .eyebrow{font-size:8px;margin-bottom:23px}.hero-description{font-size:13px;max-width:480px;margin:23px 0}.hero-bottom{margin-top:29px;padding-top:17px}.hero-bottom>span:last-child{display:inline}.scroll-note{display:none}
 .intro-grid{grid-template-columns:1fr;gap:30px}.intro-grid h2,.section-heading h2{font-size:49px}.intro-grid>div{padding-top:0}.large-copy{max-width:600px;font-size:14px}
 .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-row{min-height:225px;border:0;border-right:1px solid #d5dccb;border-bottom:1px solid #d5dccb;padding:26px 24px}.service-row:nth-child(3n){border-right:1px solid #d5dccb}.service-row:nth-child(2n){border-right:0}.service-row:nth-last-child(-n+3){border-bottom:1px solid #d5dccb}.service-row:nth-last-child(-n+2){border-bottom:0}.service-row:hover{padding-left:24px}.service-row p{max-width:90%}.service-no{margin-bottom:25px}
 .project-grid{gap:28px;grid-template-columns:1fr 1fr}.project-grid .project-card:nth-child(2){padding-top:75px}.image-wrap{border-radius:110px 0 0 0}.project-card:nth-child(2) .image-wrap{border-radius:0 0 100px 0}.project-card h3,.project-card h2{font-size:28px}
 .process-title{display:block}.process-title>.eyebrow{padding:0;max-width:none}.process-title h2{margin:0 0 40px;font-size:48px}.botanical{font-size:150px;top:0;right:-20px;opacity:.25}.steps{grid-template-columns:1fr 1fr;gap:32px}.step,.step:first-child{border-top:1px solid #bac7ad;padding-top:20px}.step h3{font-size:27px}.step p{max-width:300px}
 .region-section{grid-template-columns:1fr;gap:40px}.region-art{order:2;min-height:310px;max-width:500px;width:100%;margin:auto;border-radius:200px 200px 0 0}.region-art>span{top:55px;left:35px}.region-section h2{font-size:48px}
 .journal-grid{gap:28px}.journal-image{height:230px}.journal-grid h3{font-size:28px}.contact-section{grid-template-columns:1fr;gap:40px}.contact-section h2{font-size:52px}.form-wrap{padding-top:0}.contact-phone{font-size:31px}.footer-motto{font-size:30px}.detail-image{height:390px;border-radius:110px 0 0 0}.detail-body{grid-template-columns:1fr;gap:30px}.page-heading h1,.detail-heading h1{font-size:62px}
}
@media(max-width:500px){
 .section{padding:57px 6%}.hero-visual{height:330px}.hero-copy{width:calc(100% - 32px);margin:-35px 16px 22px;padding:29px 25px 20px}.hero-copy::before{width:33px;margin-bottom:19px}.hero h1{font-size:46px;line-height:1.04}.hero .eyebrow{font-size:7px;letter-spacing:.1em;margin-bottom:20px}.hero-description{font-size:11px;line-height:1.9;margin:20px 0}.hero-actions{gap:13px}.hero-actions .button{font-size:9px;padding:14px 15px;gap:14px}.hero-actions .text-link{font-size:9px;gap:5px}.hero-bottom{font-size:6px;margin-top:23px;gap:8px}.hero-bottom>span:last-child{display:none}.hero .image-label{bottom:52px;font-size:7px}.ribbon{padding:18px 6%;font-size:8px;gap:15px}.ribbon i{font-size:13px}
 .intro-grid h2,.section-heading h2{font-size:41px}.section-heading{gap:20px;margin-bottom:30px}.section-heading>.text-link{margin:0}.large-copy{font-size:13px}
 .service-list{grid-template-columns:1fr}.service-row{min-height:0;padding:25px 24px;border:0!important;border-bottom:1px solid #d5dccb!important}.service-row:last-child{border-bottom:0!important}.service-no{font-size:15px;margin-bottom:14px}.service-row h3,.service-row h2{font-size:29px;margin-bottom:10px}.service-row p{font-size:11px;max-width:80%}.service-row .circle-arrow{top:24px;right:24px}.service-row:hover{padding-left:24px}
 .project-grid,.journal-grid{grid-template-columns:1fr;gap:37px}.project-grid .project-card:nth-child(2){padding-top:0}.image-wrap{aspect-ratio:1.08;border-radius:115px 0 0 0}.project-card:nth-child(2) .image-wrap{aspect-ratio:1.1;border-radius:0 0 115px 0}.project-card h3,.project-card h2{font-size:29px}.card-meta{font-size:7px;margin-top:17px}.projects-section>.small-note{font-size:9px}
 .process-title h2{font-size:41px;margin-bottom:32px}.botanical{font-size:115px;top:12px}.steps{gap:30px 20px}.step>span{font-size:20px;margin-bottom:17px}.step h3{font-size:25px;line-height:1.15}.step p{font-size:10px;line-height:1.85}
 .region-section h2{font-size:40px}.region-art{min-height:280px}.region-art strong{font-size:47px}.region-section p{font-size:12px}.journal-image{height:255px}.journal-grid h3{font-size:30px}.journal-grid p{font-size:11px}.contact-section h2{font-size:44px}.contact-phone{font-size:30px}.form-pair{gap:18px}.contact-form label{font-size:9px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:11px}.contact-form .checkbox{font-size:9px}.footer-top{align-items:center;gap:20px}.footer-top .brand{width:135px;height:95px}.footer-top .brand .brand-mark{width:145px;height:145px}.footer-motto{font-size:26px}.footer-grid{font-size:10px}.footer-word{font-size:27vw}.footer-word>span{font-size:16vw}.page-heading h1,.detail-heading h1{font-size:47px}.detail-image{height:295px;border-radius:100px 0 0 0}.detail-intro{font-size:16px}.faq-list summary{font-size:25px}.prose{font-size:15px}
}
