@import"https://fonts.googleapis.com/css2?family=Spline+Sans:wght@400;500;600;700;800&display=swap";:root{color:#17342a;background:#f7f1e3;font-family:Spline Sans,Verdana,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;--cream: #f7f1e3;--paper: #fffaf0;--soil: #17342a;--leaf: #2c6b4d;--moss: #8fb86d;--mint: #b8edd2;--sun: #f3a53d;--rose: #ff8e78;--ink-soft: #52685e;--line: rgba(23, 52, 42, .14);--shadow: 0 24px 80px rgba(45, 72, 56, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top left,rgba(184,237,210,.75),transparent 34rem),radial-gradient(circle at 90% 12%,rgba(243,165,61,.38),transparent 26rem),linear-gradient(145deg,#fbf5e8,#eef5df 48%,#f8ead7)}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;content:"";opacity:.35;background-image:linear-gradient(rgba(23,52,42,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(23,52,42,.08) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 85%);mask-image:linear-gradient(to bottom,#000,transparent 85%)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}main{overflow:hidden}.section-shell{width:min(1120px,calc(100% - 40px));margin:0 auto}.site-header{position:sticky;top:16px;z-index:10;display:flex;align-items:center;justify-content:space-between;width:min(1120px,calc(100% - 40px));margin:16px auto 0;padding:12px 14px;border:1px solid rgba(255,255,255,.62);border-radius:999px;background:#fffaf0c2;box-shadow:0 12px 40px #17342a14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand,.site-header nav,.hero__actions,.app-card__links,.app-carousel__controls,.site-footer div{display:flex;align-items:center}.brand{gap:10px;font-weight:700;letter-spacing:-.03em}.brand__mark{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#17342a}.brand__mark span{width:14px;height:20px;border-radius:100% 0;background:linear-gradient(145deg,var(--mint),var(--moss));transform:rotate(-18deg)}.site-header nav{gap:6px;color:#456258;font-size:.93rem;font-weight:600}.site-header nav a{padding:10px 13px;border-radius:999px;transition:color .18s ease,background .18s ease}.site-header nav a:hover{color:var(--soil);background:#2c6b4d1a}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:54px;align-items:center;min-height:calc(100vh - 82px);padding:54px 0 68px}.hero__copy,.section-heading,.intro,.contact{animation:rise-in .76s ease both}.eyebrow{margin:0 0 16px;color:var(--leaf);font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3{margin:0;color:var(--soil);font-family:Spline Sans,Verdana,sans-serif;font-weight:800;letter-spacing:-.032em;line-height:1.05}h1{max-width:790px;font-size:clamp(3.1rem,7.6vw,6.6rem)}h2{font-size:clamp(2rem,4.1vw,4rem)}h3{font-size:clamp(1.65rem,3vw,2.65rem)}.hero__lede{max-width:620px;margin:28px 0 0;color:#3f5f52;font-size:clamp(1.1rem,2vw,1.35rem)}.hero__actions{flex-wrap:wrap;gap:14px;margin-top:34px}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 22px;border:1px solid transparent;border-radius:999px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.button:hover,.app-card__links a:hover{transform:translateY(-2px)}.button--primary{color:#fffaf0;background:var(--soil);box-shadow:0 16px 30px #17342a33}.button--ghost{border-color:var(--line);background:#fffaf09e}.hero-card{position:relative;min-height:540px;border:1px solid rgba(255,255,255,.62);border-radius:44px;background:linear-gradient(150deg,#ffffff85,#ffffff29),linear-gradient(145deg,#2c6b4d3d,#f3a53d33);box-shadow:var(--shadow);isolation:isolate;overflow:hidden}.hero-card:before{position:absolute;top:24px;right:24px;bottom:24px;left:24px;z-index:-1;content:"";border:1px solid rgba(23,52,42,.12);border-radius:32px}.hero-card__orb{position:absolute;border-radius:50%;filter:blur(1px)}.hero-card__orb--one{top:38px;right:32px;width:118px;height:118px;background:#f3a53db8}.hero-card__orb--two{bottom:42px;left:36px;width:168px;height:168px;background:#b8edd2d1}.phone-stack{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.phone{position:absolute;width:min(72%,310px);border:10px solid #17342a;border-radius:42px;background:var(--paper);box-shadow:0 28px 70px #17342a3d}.phone--front{z-index:2;min-height:438px;padding:26px;transform:rotate(-6deg) translate(-18px);animation:float-phone 5.5s ease-in-out infinite}.phone--back{right:28px;bottom:58px;min-height:316px;padding:168px 24px 24px;color:#fffaf0;background:#2c6b4d;transform:rotate(10deg)}.phone__bar{width:68px;height:7px;margin:0 auto 34px;border-radius:999px;background:#17342a38}.phone__bloom{display:grid;width:142px;height:142px;margin:0 auto 30px;place-items:center;border-radius:46% 54% 44% 56%;background:radial-gradient(circle at 70% 28%,#fff 0 9px,transparent 10px),linear-gradient(145deg,var(--mint),var(--sun))}.phone__bloom span{width:42px;height:74px;border-radius:100% 0;background:var(--soil);transform:rotate(-28deg)}.phone p{margin:0 0 8px;color:var(--ink-soft);font-size:.88rem;font-weight:700;text-transform:uppercase}.phone strong{display:block;color:var(--soil);font-family:Spline Sans,Verdana,sans-serif;font-size:2.1rem;letter-spacing:-.025em;line-height:1.05}.phone--back p,.phone--back strong{color:#fffaf0}.phone__rows{display:grid;gap:12px;margin-top:34px}.phone__rows span{height:14px;border-radius:999px;background:#17342a1c}.phone__rows span:nth-child(2){width:76%}.phone__rows span:nth-child(3){width:58%}.intro{display:grid;gap:28px;align-items:center;padding:44px;border:1px solid var(--line);border-radius:36px;background:#fffaf09e}.intro>div{max-width:980px}.intro p:last-child,.contact p{margin:0;color:#466257;font-size:clamp(1.05rem,2vw,1.28rem)}.intro p:last-child{max-width:900px;font-size:clamp(1.2rem,2.2vw,1.55rem);font-style:italic;line-height:1.55}.apps,.principles{padding:82px 0 0}.section-heading{max-width:780px;margin-bottom:34px}.apps .section-heading{max-width:none}.portfolio-title{white-space:nowrap}.app-carousel{position:relative}.app-carousel__viewport{border-radius:36px;touch-action:pan-y;overflow:hidden}.app-carousel__track{display:flex;transition:transform .68s cubic-bezier(.22,1,.36,1);will-change:transform}.app-carousel__track--instant{transition:none}.app-carousel__slide{flex:0 0 100%;min-width:0}.app-card{position:relative;display:flex;min-height:460px;flex-direction:column;padding:clamp(26px,4vw,42px);border:1px solid rgba(255,255,255,.72);border-radius:36px;background:#fffaf0b8;box-shadow:0 20px 55px #17342a17;overflow:hidden;animation:rise-in .76s ease both}.app-carousel .app-card{display:grid;min-height:390px;grid-template-columns:minmax(240px,.68fr) minmax(0,1fr);grid-template-areas:"top description" "links stats";column-gap:clamp(28px,6vw,72px);row-gap:34px;align-items:start;animation:none}.app-carousel .app-card__top{grid-area:top}.app-carousel .app-card__description{grid-area:description;max-width:560px;margin:0;font-size:clamp(1.12rem,2vw,1.42rem)}.app-carousel .app-card__stats{grid-area:stats;align-self:end;margin:0}.app-carousel .app-card__links{grid-area:links;align-self:end}.app-carousel__controls{justify-content:flex-end;gap:10px;margin-top:14px}.app-carousel__controls button{display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(23,52,42,.12);border-radius:50%;color:var(--soil);background:#fffaf0d1;box-shadow:0 12px 28px #17342a1c;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.app-carousel__controls button:hover{background:var(--paper);box-shadow:0 16px 32px #17342a29;transform:translateY(-2px)}.app-carousel__controls span{display:block;margin-top:-2px;font-size:2rem;line-height:1}.app-card:after{position:absolute;right:-86px;bottom:-86px;width:220px;height:220px;content:"";border-radius:50%;opacity:.85}.app-card--sunrise:after{background:radial-gradient(circle,rgba(243,165,61,.7),transparent 68%)}.app-card--mint:after{background:radial-gradient(circle,rgba(184,237,210,.9),transparent 68%)}.app-card__top{display:flex;gap:18px;align-items:center}.app-icon{display:grid;width:76px;height:76px;flex:0 0 auto;place-items:center;border:1px solid rgba(23,52,42,.1);border-radius:24px;color:#fffaf0;background:radial-gradient(circle at 78% 20%,rgba(255,255,255,.55),transparent 20%),linear-gradient(145deg,var(--soil),var(--leaf));font-family:Spline Sans,Verdana,sans-serif;font-size:1.55rem;font-weight:750}.app-card__top p{margin:0 0 4px;color:var(--leaf);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.app-card__description{margin:30px 0;color:#3f5f52;font-size:1.12rem}.app-card__stats{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:auto 0 28px;list-style:none}.app-card__stats li{padding:9px 12px;border:1px solid rgba(23,52,42,.1);border-radius:999px;color:#405d52;background:#ffffff73;font-size:.88rem;font-weight:700}.app-card__links{flex-wrap:wrap;gap:12px}.app-card__links a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 18px;border-radius:999px;color:#fffaf0;background:var(--soil);font-weight:800;transition:transform .18s ease,box-shadow .18s ease}.app-card__links a:hover{box-shadow:0 14px 28px #17342a29}.principles__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.principles__grid article{min-height:170px;padding:22px;border:1px solid rgba(23,52,42,.12);border-radius:28px;background:#fffaf085}.principles__grid span{display:block;margin-bottom:20px;color:var(--leaf);font-weight:800}.principles__grid p{margin:0;color:#314f44;font-size:1.08rem}.contact{display:flex;gap:28px;align-items:center;justify-content:space-between;margin-top:88px;padding:clamp(28px,5vw,54px);border-radius:40px;color:#fffaf0;background:radial-gradient(circle at 92% 22%,rgba(243,165,61,.5),transparent 24rem),linear-gradient(145deg,#17342a,#285943);box-shadow:var(--shadow)}.contact .eyebrow,.contact h2,.contact p{color:#fffaf0}.contact p{max-width:620px;margin-top:18px;opacity:.78}.contact .button{flex:0 0 auto;color:var(--soil);background:var(--mint)}.site-footer{display:flex;gap:20px;align-items:center;justify-content:space-between;width:min(1120px,calc(100% - 40px));margin:48px auto 0;padding:34px 0 46px;color:#547065;font-size:.94rem}.site-footer p{margin:0}.site-footer div{gap:18px;font-weight:700}.site-footer a:hover{color:var(--soil)}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float-phone{0%,to{transform:rotate(-6deg) translate(-18px)}50%{transform:rotate(-4deg) translate(-10px,-14px)}}@media(max-width:900px){.hero,.intro,.principles__grid{grid-template-columns:1fr}.hero{min-height:auto;padding-top:42px}.hero-card{min-height:500px}.app-carousel .app-card{grid-template-columns:1fr;grid-template-areas:"top" "description" "stats" "links"}.app-carousel__controls{display:none}.contact{align-items:flex-start;flex-direction:column}}@media(max-width:640px){.section-shell,.site-header,.site-footer{width:min(100% - 28px,1120px)}.site-header{position:relative;top:0;align-items:flex-start;border-radius:28px;flex-direction:column;gap:10px}.site-header nav{width:100%;justify-content:space-between}.site-header nav a{padding-inline:10px}h1{font-size:clamp(2.65rem,13vw,4.1rem)}.portfolio-title{white-space:normal}.hero{gap:34px;padding:38px 0 54px}.hero__actions,.button{width:100%}.hero-card{min-height:430px;border-radius:30px}.phone{width:76%;border-width:8px;border-radius:34px}.phone--front{min-height:360px;padding:22px}.phone--back{right:10px;bottom:44px;min-height:260px}.phone__bloom{width:112px;height:112px}.phone strong{font-size:2rem}.intro,.app-card{padding:24px;border-radius:28px}.app-carousel__viewport{border-radius:28px}.apps,.principles{padding-top:54px}.app-card{min-height:0}.app-card__top{align-items:flex-start;flex-direction:column}.app-card__links a{width:100%}.contact{margin-top:62px;border-radius:30px}.site-footer{align-items:flex-start;flex-direction:column;margin-top:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
